The reason is that XP does not have DOS; it "emulates" DOS (and not very well). Basically any program that used a DOS emulator has no hope of running under XP. I "solved" that problem with MS Virtual PC (purchased from another company, natch). The only problem--aside from the cost--is that the Virtual PC has a 640x480 screen and I have not found any way to change that.
Perhaps "Dosbox" does better?
--Boris
Many in the DOS community do use DOSBox and/or VDMSound to run DOS software under NT/2000/XP successfully.
Are they perfect? No. They are not a panacea for running DOS software under NT-based Windows.
Will they allow all DOS software to run under XP? No.
However, I see no harm in trying them. They are free. If they don't work, all the user has lost is a little time.