I managed to do this in the end, here is an overview of what I did.
- Create a vhd and mount it (see guide)
- Copy the contents of Windows.old to the mounted vhd
- Installed Virtual Box (Microsoft Virtual PC cannot cope with 64 bit virtual clients)
- Unmounted the vhd from windows and used it to create a new Virtual Box instance
- Kicked off the new instance and booted to a windows 7 install cd
- Using the Windows 7 boot cd recovery options I opened a new command prompt
- Using Diskpart.exe I set my primary partition to be Active (see guide)
- Used Bootrec.exe to create a new MBR and rebuild the Boot Configuration Data (BCD) store (see guide)
I was then able to boot into my vhd. My old windows 7 install then went through a number of automated driver updates due to the new virtual hardware configuration. After a few reboots it was fine though. Note, I did need to reactivate windows though due to the hardware changes.
Hope this helps anyone else trying to do the same.