My stagger spell seems to work fine when cast from a spell. I set it to a self cast fire and forget, also I believe it must be of archetype "stagger" or something. I believe that for stagger the magnitude is between 0.1 and 1, anything above that just seems to play the same animation.
Just add a property to the script of type spell, link to your spell with the stagger magic effect on it and then do a:
myProperty.Cast(target, source) - target and source can both be the guy you are trying to hit
Can't remember the exact syntax but working fine for me. The only thing I will say is that it doesn't work well against the player, only against NPCs.