I've got a lot of different 7970 cards and the XFX ones are the worst i've ever used. My Gigabyte ones will fly over 700 a piece of cake, my Diamond ones will do over 600 without much effort, but the XFX ones i'd be lucky to hit 550 no matter how much tweaking or OC'ing.
But did you flash? It's the flashing that usually gets them from 550 Kh/s up to 700Kh/s...