When I started playing Dota 2 Crystal Maiden was very weak. She had a place on pro games but on pubs, where there is a lack of coordination and games tend to drag she find herself undergeared, underleved and without an end game.
Theorically, a Black King Bar / Scepter / Blink Crystal Maiden can turn a fight but realistically, where will she find the farm?
Basically, playing CM is hard and risky. Yes, it can work. At this point I think all heroes are viable but I never do well with her even though I have a positiive score. I always feel my biggest contribution for the team was the aura because I surely wasn't getting kills.
Medusa on the other side, the hero just works for me. It's tanky which helps lack of judgment and do well on lane with Mystic Snake, plus she can turn a teamfight with her ultimate. Plus, she is very strong late game which many times forces the enemy team to deal with you. Any hero who forces the enemy to do something is good in my book.
Basically, low risk, high reward hero who is strong at all phases of the game. What is not to love?