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...
The XFX ones i have are 925 core edition, isn't that what i'd want the bios to be anyway? Or is there more to it than that?