It does sound a bit strange, are neighbours the same, maybe it's a geographical error when the areas have been divided up for the codes?
One way you could workaround it I guess, at least for people you call regularly. If you have a phone with a phonebook on it (you can add peoples' numbers and just bring their name up to dial). Then you could make sure you when you add people to the phonebook that you add the full phone number (including the relevant dialing code), the same as you would if you were adding them to the phonebook on a mobile phone.
That way it would make sure the number dialed always included the right dialing code too.
I know you shouldn't have to, but it's a workaround for now.