They're actually both equally right because they're transliterations. I currently have a Ukrainian grad student whose name is Tetyana, and she sometimes spells the short form of her name in English as 'Tania' and sometimes as 'Tanya' (and when she's writing German, she spells it 'Tanja'). If Philip were using the short form of his Russian name in his American life, he'd probably eventually pick a spelling, but as it is he doesn't have to, and one isn't more correct than the other. I write 'Misha' because it's marginally more common and because 'Mischa' looks German to me, but they're both legit! :)
Misha/Mischa