Assassin 'suckage' tends to happen when both attacker and target are in the same province when you order the attack.

Try this.

Emissary is in A (your province)
Assassin is in B (your province), next door.

Pick up assassin, drop him in Province A. Pick him up again and drop him on the Emissary. End Turn.

If the AI pulls off its cheaty attack-detection trick, you will at least have scared him off your turf for a year. Your assassin will be left behind in Province A and will attempt to cross the border in pursuit next year.
Pick him up and drop him again to cancel the mission, then move him back to Prov B.
Repeat as necessary. Sometimes you may succeed in getting the target.

If Province A is a port, then make assassin's Province B be one of your other ports but not next-door, as he will attempt the overland route, which I think plays a part in the escape cheat. This time, don't move him into A, just drop him on the Em from where he stands, in B. He will auto-move by the sea route.

More often than not, this time he'll kill the target because the AI somehow doesn't see it coming...