I could recount more horror stories about dual boot systems than you'd ever want to read.....so I won't!!!
I'll spare both of us the pain of it all.
If you already have two hard drives (you didn't say if they are IDE or SATA) then you already have the answer to your problem, right in front of you.
On a SATA system, the mobo will boot from the first port where it finds an OS, so if you put the XP drive on port #0 and the Vista drive on port #1, the mobo will always boot to XP by default. (and, vise versa)
Using IDE drives is a bit trickier, but still do'able.
On my own system with an MSI K9N-Platinum mobo, I can press F11 during boot and get a nice little boot menu, showing every drive on my system, including all my USB and flash card ports.
I don't use Vista much so XP is my default OS on the first drive.
When I want to go into Vista, I just reboot, using the Boot Menu and select the Vista drive. No problem!
That keeps the two OS's on the two drives separate and provides a good place to store Ghost Backups of each drive (on the other drive's second partition).
So, if one drive takes the big dump, I can replace it, then do a Ghost restore from the backup files on the other drive and I'm back in business in just a few minutes.
To make your system truly 'bullet proof' you have to formulate a workable plan and then work that plan. I went thru all this stuff years ago, so now it's just second nature for me. I always partition every HD I set up into two partitions. The first one for the OS and most programs and the second one for "Stuff" including huge software suites like Corel or Office.
Also a critical part of my "Plan" is doing a Ghost backup of my system to an external media, at least once a week. Having a backup on DVD and in a fireproof vault is the best insurance you can get, against some disaster wiping out your system.
Cheers Mates!
The Shadow