Since I started using Google Contacts sync with my iPhone I've had big headaches with addresses. Addresses in the iPhone always end thinking they are in the United States no matter what I do in Google Contacts or on the iPhonee. I still don't understand exactly why this happens but I think it's probably to do with the fact that Google stores addresses as a big multi-line text block and the iPhone stores them as different fields. It's clearly a bug, but Google doesn't seem to think so and I'm not actually sure it's Apple's problem or Google's.
However, the problem improves if I use Nuevasync instead of Google Sync. And so far it doesn't seem to be any worse in other respects. So this is what I will do.