Sorry, but I don't think I can be of further help. I'm not very bright re computers et al.
Some suggestions:
It seems peculiar to be an XP problem. My problem was a problem for both xp home, xp pro, and W2k pc operating system. Do you have another system you could try?
It seems peculiar to be an SME problem, if you can vpn between them. Can you give your xp machine a fixed address and then take the 2003 server out of the loop.
Might there be an addressing conflict. Occassionally we have people whose home router happens to have the same address range as at work. Even if there is not a direct conflict (two devices, same address), it can act up. The usual symptom was that it would apparently connect but could not go any further.
There you have it, sum total of my expertise in the matter. Good Luck.