Here is what i found/noticed as i started to pay more attention to the conversations and events through the game.
I believe that while Magda appeared to deliver the death blow for Cain the true cause of his death was diablo himself. Something even the characters in the game do not fully grasp, considering they make a witch hunt for Magda in act II. What do i mean and where do i get this? Well first lets look at the cause of death for which i have two theories that surround diablo.
We know that later on Diablo is in fact inherent in Leah and is the source of her "unexplained powers" and that "its only happened a few times and only when i was in grave danger". This being a clue saying i believe Diablo was in a sense protecting himself, due to needing Leah to be alive to carry out his plans. So back to Cain. Diablo killed Cain by either....
1) During the scene in the home he provides enough power to destroy the cultists that are endangering leah but not enough to damage Magda who appeared to have Cains life in her hands.If you notice the placement in the room the cultists that have Tyreal are closer to Leah then Tyreal is. and all the other cultists are closer to Leah then Cain Magda or Tyreal. SO, during the blast the cultists are turned to mush, but the now mortal Tyreal, the witch Magda and Deckard Cain are all in a linear path just far away enough not to be destroyed by Diablo, so in effect he wanted Cain to die and therefore did not provide enough of an attack to kill Magda, setting Deckard free in time to have a recoverable chance from her magic.
Why wouldnt he just blast them all and destroy cain himself and take out magda and tyreal, well, remember diablo still needs belial and azmodan to be part of the soul stone before he can become the prime evil. taking out tyreal and magda may have eliminated 2 strong factors in the group of heros chasing magda to caldeum thus finding the soul stone and starting the events for the rest of the game, including Diablos return.
2) Perhaps Diablo DID in fact provide a strong enough blast to kill everyone in the room, but magda was protected by her bubble and tyreal did survive a fall from the heavens, perhaps a blast from a weak Diablo vessel wouldnt be strong enough to kill him. Cain being the badass we all love was able to resist the damage long enough to restore the sword and then collapse in his death. In saying this you can justify that Magdas butterfly kiss was not the death blow, but diablos blast was infact what finished Deckard Cain off.
Also, as a side note, after the event Leah laments that "if only i could control these powers, i could have saved uncle deckard". She either 1) knows the blast wasnt strong enough to hurt magda so she couldnt prevent his death, enabling scenario 1. Or she knows it was too strong and that it could have hurt Cain further then he already was, enabling scenario 2. Remembering at this time she is unaware of her role in diablos plans, and wouldnt know it was Diablo causing his death directly or indirectly, therefore blaming herself.
Just some thinking/ theorizing i had for the story line that perhaps some didnt consider when raging about cains inglorious death. If in fact this was the true line of the story that perhaps was meant to be an undertone from blizzard then i would say Cains death was justifiably glorious. The 2 time knowledge provider that lead to Diablos demise was finally erased by Diablo himself, thus in his mind furthering the chance of his victory. Diablo after all is one crafty b@$tard.