I've been having almost exactly the same problem as you and have come to the conclusion that PATA drives will always end up as the primary if they are installed. I did a lot of experimentation to try and make a SATA drive the boot drive, and whilst it is possible to change the boot priority order in the BIOS and get the BIOS to boot from a SATA drive, Windows refuses to boot from anywhere except the first IDE drive. The PATA connector is linked to IDE0 (master and slave) whether enabled in the BIOS or not whilst the SATA drives are lined to IDE1 onwards. So, if you have an IDE drive connected Windows will always default to that as the boot drive regardelss of what you try in the BIOS. The only way you might get it to work (but I doubt it) is to install Windows with the PATA drive removed, then connect the drive whilst ensuring the BIOS is still set to boot from the SATA drive first and hope that Windows doesn't start complaining about attempting to boot from the wrong drive.
For reference, the drives are allocated as follows.
Drive | Channel | Location |
PATA master | IDE0 master | PATA controller |
PATA slave | IDE0 slave | PATA controller |
SATA | IDE1 master | SATA 2_4 connector |
SATA | IDE1 slave | SATA 2_5 connector |
SATA | IDE2 master | SATA 2_0 connector |
SATA | IDE2 slave | SATA 2_2 connector |
SATA | IDE3 master | SATA 2_1 connector |
SATA | IDE3 slave | SATA 2_3 connector |
Its an odd order, but then SATA 0-3 can be configured as a RAID array whilst still leaving SATA 4-5 as native IDE, which does sort of explain the odd arrangement. I wasn't able to work out the GSATA ports, although these use IDE4 and IDE5, but appear to allocate the channels dynamically depending on what is plugged in.