The actual MBR is only the first 446 bytes. The rest is the partition table, therefore do not write the full 512 bytes otherwise you will alter your partitioning!
dd if=~/XP_mbr.bin of=/dev/hda bs=446 count=1 command
(assuming you save the file locally in your home dir as “XP_mbr.bin”)