I think there's a switch for can't where armor (isn't there?! ... Maybe I made that up ... but I'm sure there's an easish way ... Maybe I'm thinking of Weapons (there is an easy way to do that!)
Activator: You can pick gems up, but I don't think that's the same as activation.
HOWEVER: That did prompt me to think that the act of picking one up is captureable and scriptable ... So hold you horses on your (nice, I liked it) work-around with smithing.
Chase this for an hour or so, to see if it suits you:
You can script the OnContainerChanged Event: http://www.creationkit.com/OnContainerChanged_-_ObjectReference
So, if the player (and/or an NPC) picks up a gemstone it's oncontainerchanged event could be used to either fire off a load of scripts, or turn the genstone into ObjectB (which would be an activateable object, that you probably designed and modded yourself) that - when activated - runs your ton of scripts.
OR, you could (I think) use the StoryManager System (though if you have never used it before you might find it a bit frustrating to start with).
SM has "Player Add Item" and "Player Remove Item" events, which you could use to test if the "correct" gemstone had been added to the player's inventory (or removed from it) and then have a quest fire that sorts out your magika and effect scripts.
Either of those is worth a look.
But if you stick with the smithing idea ... "Craft Item" is a Story Manager Event that might help you out.
Best of luck, still think it's a nice idea
