jsluk I'd like to help more, but I've only created a dual-boot once, and in fact, I believe it was long enough ago that it was probably LILO, not GRUB. (More recently, I've just created multiple VMs instead.)
The distro I was installing back then (probably SUSE at that time) gave me a choice during the installation whether to install next to Windows or to replace Windows. I chose to install next to Windows, and the Linux installer handled shrinking the Windows partition and creating another for Linux. In the end, it created the boot-loader to include options to start one or the other.
I know that LILO's replacement, GRUB, can be edited to allow you to select which partition to boot, but so far I've had no reason to investigate that any further. Most of my computers have only one OS installed (Solus). My development machine allows me to hot-swap two SSDs, so I can make it a Windows machine (drives C and D) or a Solus machine or something else just by swapping in the appropriate drives.
I'm sure there are GRUB experts here though, and I'm pretty sure one of them will take over from here. 😀