Typically it doesn't. It's different memory timings that become an issue like mixing a 4-4-4-12 timing chip with a 5-5-5-18 chip is bad. Another example, you put in a 133mhz chip to upgrade, your system detects this and your old 100mhz chip starts barfing and hanging the system. It's hit or miss in that fashion. Best to only use exact same make, model and size. Personally, for an upgrade, I'd pull the 64s out and just leave the 512 in.
I've also had BSOD installing XP from an upgrade version, even on a clean disk. I've probably installed XP several hundred times. I would try installing it from a full version but I have access to all that in piles here in my office. Once installed successfully on the full version you can change the CDkey over to the one on your license and be legit.
Well, I checked that out, and my 512 is a PC100/133, and the 64s are PC133s, so I think I’m OK on that front, anyhow.