When looking at the information the things I noticed were that the MSI has "only" 2 GB memory, while having a faster clock speed, and the HD7950 has 3 GB memory with a slower clock speed.
Looking at specs such as core clock speed or memory clock speed doesn't help much when comparing different GPUs. 2GB is still more than enough for 1080p although getting a 3GB at similar price is quite tempting but it's more useful to triple 1080p gaming or so.
Maybe the HD7950 could get overclocked to match the N660TI?
This is a bit wrong. An overclocked HD7950 (highly) can easily rival or even outperform a GTX680. GTX660ti overclocking is more limited.
Anyway, I always suggest an HD7950 over a GTX660ti if the price is similar or close enough. The reason is that the 7950 is in most games, slightly faster, it has more VRAM, higher memory bus (less impact after applying AA) and more overclocking headroom.
I would suggest the 7950 because it's simply the more powerful card when both are fully overclocked. It also has double the bus bandwidth (384 bit as opposed to 192 bit) which means it takes much less of a performance hit when you apply AA (anti-aliasing).