It seems the initial install can be done either natively or in a virtualbox. I chose to install in virtualbox first, so that I didn't have to worry about changing the boot order of drives in bios.
I created a raw disk vmdk using the command
VBoxManage internalcommands createrawvmdk-filename Alucard_win7.vmdk -rawdisk /dev/sdb
Note that I did not restrict partitions or specify an MBR file. This is because I want windows to actually put its loader in the MBR of the /dev/sdb disk.
I created a virtualmachine, attaching this disk as a SATA drive, and putting the windows 7 install iso as the cd drive. After installation, I did not enter a serial number, but just "continued". After windows loaded I ran "Windows Loader" installation to handle the serial number issues.
Anyway, after this all happened Ubuntu had trouble reading from /dev/sdb. It could not enumerate the partitions. In order to solve this I rebooted, changed boot disk order, and booted into windows natively. It worked without requiring the repair disk, but note that in some tutorials they say that you'll need to repair the installation.
After rebooting again, and changing the boot disk order, ubuntu started and could see the partitions on /dev/sdb. I probably didn't need to change boot disk order, but probably just needed to restart so that the drive was re- enumerated.
Anyway, after this, I ran
and windows 7 was found. The grub entry that was created would boot windows 7 natively without any problems.