If the problem is not hardware-related, as
StopSpazzing thought, my guess is that XP is looking for files in the UFD.
For some reason, while fixing XP, some procedure have set some necessary (system?) files as being located in the UFD, and now for each boot, XP (wrongly) continues to look for them there.
Also, if my previous guess is correct, then I would tend to think that this issue has NOTHING to do with
http://www.ultimatebootcd.com nor with UBCD, but of course I may be wrong

.
A possible solution could be to place all the installation files of XP SP3 in the same HDD where the XP system is installed (could be the same partition or a different one), and from there re-run the fixing procedures, without having the UFD connected.
A more "manual" solution would be to search the current booting paths using the relevant tools (msconfig.exe is the more basic one, but probably it doesn't cover all the possibilities). The problem could be a path in the registry, while the real file AND the registry should point to the HDD ( probably under C:\ ..... ).