To match up C drive (you don't want this).
Clean everything off your new drive. Install a second copy of XP on the old drive and boot to that (or have some third party software that can run free of the Windows environment and copy the folders etc). Make sure all System and Hidden files are showing. Use this new install of XP to copy the original install of XP and all the folders and files from your old drive (just from the XP partition) to the new drive and into the first partition (and only formatted partition, the rest being unallocated space)of the new clean drive (don't worry about drive letters at this point). Make sure the copied boot files are in place and the boot.ini is pointing to this install of XP on your new drive. Disconnect the old drive, make sure you can boot to the copied XP, and make sure the drive letter is now showing as C after you have booted to it. Use this install of XP to set up the extra partitions then reconnect the old drive and copy the remainder across.
Q305595 - HOW TO: Create a Boot Disk for an NTFS or FAT Partition in Windows XP
HOW TO: Edit the Boot.ini File in Windows XP (Q289022)
Alternatively stay as you are with your new drive and just re-install the programs into the XP you have already on that drive and copy your data across. That sounds the better option to me.
Trying the above with a full drive you would never get C where you want it to be.
Your biggest headache is the drive with your loaded (running) XP, this is going to be shown as your Boot Volume. The drive with the boot loading files on it is known as your System Volume. It is possible if the boot files are on the same volume as the operating system to have a combined Boot and System Volume, which is just shown as the System Volume. The current running XP will never allow you to change either of these two (or one) drive letters while it is running.
Another problem to overcome is that working from a second install of XP used to move the partition with your first install of XP. The drive letters may vary and not be the same when running in XP1 or XP2, for example 1 may show a drive E, but 2 will show the same drive as F. This sort of oddity occurs when changing (or trying to) system drive letters. You can use this to your advantage if you are moving to an empty drive with just one partition and a lot of unallocated space that can be sorted later.
HOW TO: Change Drive Letter Assignments in Windows XP (Q307844)
"Changing the drive letter of the system volume or the boot volume is not inherent to Disk Management.
Many MS-DOS-based and Windows-based programs make references to a specific drive letter (for example, environment variables). If you modify the drive letter, these programs may not function correctly."
Assign, change, or remove a driver letter........Help and Support program
How can I change the System partition drive letter in Windows XP?