Masha is a Russian diminutive of Maria, and the -k- looks as if it would make it a double diminutive. Of course, Megan and Maria aren't related at all, but perhaps your great-grandmother just used an affectionate nickname form of a name she was familiar with that started with M.
Did the old lady really dislike the English language? How inconvenient for her! At least she loved your sister.