There isn't one. Most people in the support trade figure out very early on not to bother trying what you're trying, for exactly the sorts of reasons you're finding. For good or ill, Microsoft made certain design decisions with Windows that will make this sort of thing a huge headache. Most successful techs will figure this out quickly, and only try this once before moving on to just reinstalling the OS and associated software. When you think about all the time and effort you've spent on this problem already, and compare it to the amount time and effort it'd take to just reinstall everything... You've probably already gone past that point.
Hi guys and girls,
I am supposed to fix up this old desktop pc for my grandmother, and trust me you don't wanna know how old it is. The problem I was trying to fix was that the OS was installed on a small 40 gig hdd from ancient times, that was barely able to move with XP. Since the PC had like 70% free space on a second hdd that was an 80gig Seagate with 7200rpm, I wanted to shift the OS from the first drive to the second.
Since I have an in with a buddy from a tech support service he gave me a bunch of boot cds. So I moved the two existing partitions on the second drive to the end of the drive, and copied the original system partition to the second drive's beginning. Then I popped the pc open and switched the IDE cable (yeah, I know) so that the second drive was at the master position and the first was at the slave position. New system partition was made active, and the PC did a boot from it just fine. Problem is that none of the software would run properly since they were all installed to the C: drive and the new partition was D:.
So I monkeyed around with the boot CDs (didn't use partition magic because it showed an error 106) and using easeus i rebuilt the mbr on the new drive and removed the ancient one.
When I tried to boot again, it got to the welcome screen and just sat there. Now if I insert the original drive, set the xp partition as active and rebuild mbr, it boots just fine, but the problem is that it boots from the old c: drive.
So, can somebody please help me out and tell me a program that can, without booting windows change the system drive letter.

Chowhound
Comic Vine
GameFAQs
GameSpot
Giant Bomb
TechRepublic