The design on this card seems to have gone wrong... I think errata is the only way to save it.
Specifically the R. It cannot possibly work right with any of the variable lifegain cards: if I Ritual Magic off of my opponent's Battle Prowess, then (when Ritual is activated) the amount of vitality they would gain is an undefined variable, because a target has not been chosen; if I Magic off an Abelia's Friendship, the cards haven't been revealed, so again X is an undefined variable which defaults to 0.
Sorry if someone covered this already :s