eSATA hot swap on Vista 64-bit

Does anyone know of a controller that properly supports eSATA hotswap ?

I have a PC with a Gigabyte P35-DSR3 motherboard. It has 2 built-in SATA controllers, one Intel ICH9R with 6 SATA ports, and one Gigabyte with 2 ports.

Even when running both of those with AHCI in the BIOS, hotswap does not work. I can get hotplug to work… But when I start unplugging or turning off any eSATA device, the operating system goes to hell. There is no “safely remove” button for any eSATA device. The operating system just hangs looking for the device that was unplugged. It does not resume unless it is turned back on or plugged back in.

I also have a PCI card with a VT6401 SATA RAID controller. Same story with that one.

What SATA controller do I need that will properly do eSATA hotswap ? Preferably PCI-E.