Weakness to magic will never work in one hit. Just like weakness to the elements, it only counts on subsequent hits.
It works better if Soul Trap is at the end, rather than the beginning. Then you can make the duration on the Soul Trap the same as for the other damages, and be guaranteed to trap the soul. The effects go off in order and if they all have the same duration, they end in the same order, so it's possible, if Soul Trap is at the beginning and has the same duration, that it will have switched off a fraction of a second before the damage that makes the kill is recorded.
And yeah-- that specific set-up (or the same sort of thing with absorb or drain health) is, IMO, the simplest and most practical melee weapon enchantment. Absorb's handy, but it's a bit of a charge-hog. Drain is the most charge-efficient and can actually give you a huge boost, since any time the drain takes the opponent's HP to 0, that's a kill.
Honestly, drain health is so effective that I rarely use it-- to me, it just spoils part of the challenge.
There are some other absorb/damage/drains that can be useful-- things like strength or speed or blade-- but some of them aren't available easily (like drain attribute), some don't exist at all (like damage skill) and all in all, at least in my opinion, they're just not as consistently effective as elemental damage plus drain health.