Cassiopeia is very strong, but smart play can still overwhelm her.
Off the top of my head I can think of three methods to counter Cassiopeia mid.
1. Boots + 3 pot, flash + ignite, hyper burst champion. Basically LeBlanc, Annie, Garen, etc. Just derp around dodging q's for the first 5 levels and obliterate her at level 6. You know the drill. Flash tibbers. LeBlanc's q r. Garen flash silence spin ulti dead. The idea is to get level 6 before Cass (push push push).
2. Bait the jungle gank. She's probably one of the easiest mid champions to gank early on. If I had to list reasons why.... man, the list would be pretty extensive. Cass has such crappy mana but loves to harass, resulting in no freaking mana to defend herself with. Cass's harass and killing blow literally requires her to move into bad positioning all the time. Cass doesn't actually have the instant kill from 100% mechanic of other mages, giving the gank partner an opportunity to counterstrike (this is also why she needs to harass all the time). Etc. etc. etc. Long story short, she's really easy to gank before she's level 6.
4. Play champions that harass more than she can. Riven is especially good at this. Renekton too. Talon as well. Basically if she ever comes within range, just smack her around a bit. The key is to do more damage than she will do to you. I guarantee you that if you're packing full AD on Renekton and you reduce Cassiopeia to half health at level 2, she won't ever try to do anything to you for the rest of the laning phase.
Even though I make it sound like she's so weak, she still really isn't. Malz is a technically superior champion but Malz is so freaking easy to counter. Buy QSS. Play Veigar. GG Malzahar. Fighting Cass actually requires a lot more effort. She combines the irritating harass of Karthus with quite a lot of the damage potential of Malz.
This basically translates to: Cass is like Urgot, Lee Sin, Orianna, and Gragas. These are champions which can only be countered by being a better player. Which can make things quite frustrating. The phrase
"what the fuck am I supposed to do?!" comes to mind.