Jonj, this is EXTREMELY easy if you bought the FULL version of Vista. Check your BIOS to make sure you can boot to CD/DVD. Put your Vista disk in the optical drive (don't bother to run the install under windows), Shutdown XP and Power off your PC. Install the new HDD and power the PC back up. Make sure you boot to the CD/DVD drive. Vista's installer will load up. You will get to a screen giving you the option to install Vista over the existing OS. Don't. Select the new drive (un-partitioned) and click next. The loader will install Vista to that drive after it's partitioned/formatted it. It will also install Vista's bootloader on the original OS drive. Let Vista go through all it's install. When it's done, you'll be in Vista. Activate, install drivers/updates, etc.
I suggest you do this a different way though. If you have two drives, you really should install both OS's on the first, and use the second for all your apps/games/data. Only downside is that you'll need to copy all your data (not games/apps, just data, email, pics, movies, music, etc.) to the new drive. Partition/Format it using your active XP, then do the file copy. Then boot to the XP disk, delete the old drive's partition. Create a new partition (not the whole drive though) of at least 20GB but no more than HALF the drive. Tell the XP installer to install XP to that partition. Follow through the install, get all your drivers/updates installed (NOT YOUR APPS/GAMES!!!). Go into Drive manager and set your DVD drive to something like I: (eye) and the new HDD to E: (this makes sense later).
Next, reboot to the Vista DVD. Do a custom install of that to the remaining unpartitioned space on your original drive. Finish the install and get activated/patched/updated. Again DON'T install games/apps yet. If you noticed, XP will be on the D: drive, Vista on the C: and DVD on E:. Change the DVD To I:. This way you'll be able to add more HDD's later without messing up where Windows apps think your DVD is at.
Now, reboot to XP. Install all your apps/games to the "data" drive which should be E:. To do this just make sure you select the custom install option on the apps/games and change the C: to a E:. Only install an app on the C: drive if it ONLY works on XP or if it's AntiVirus/Spyware software (They don't play well being installed to the same directory from multiple OS's). Also, notice that the Vista partition is D:.
Now, once you've installed everything you use XP for, reboot to Vista and go through the same process. If installing the same app/game, just install it overtop the the existing files on E:. Most things will work fine this way. If they don't you just install it to a different location on the data drive. I still suggest keeping the AV/AS software on the C: drive of EACH OS though.
Also, some people think it's safer to put the OS's on different drives in case one OS/drive fails. Doesn't work that way. Windows "boots" from the first drive, always. If the first drive fails, you can't disconnect it and get into the second OS.
Have fun.