i had been playing with a target/focus swap macro for some time.. always was a lil buggy .. and never used for raids , just pvp/grinding.. but those at wow-wiki have solved this problem for me... very similar to mine.. but raid reliable
Swap focus / target
/stopmacro [noexists][target=focus,noexists]
/target focus
/targetlasttarget
/focus
/targetlasttarget
Advanced swap focus / target
/focus [target=focus, noexists]
/target [combat, noexists] focus
/clearfocus [nocombat, noexists]
/stopmacro [target=focus, noexists]
/target focus
/targetlasttarget
/focus [exists]
/targetlasttarget
Sets the focus if you don't have one; clears the focus if you're out of combat and don't have a target; targets the focus if you're in combat and don't have a target; otherwise swaps the target and focus.
reading this.. it does exaclty what i been looking for, all but target a new hostile if target/focus is dead...
havent even tested .. server is down.. but if i do work out a modification to this macro i will post