iControl uses the same interface as the management GUI (as you mentioned). There is no mechanism to have a floating IP that will connect to the management port of the active device.
What we suggest you do is during your monitoring cycle, check the System::Failover::get_failover_state() method to determine whether the device is active or standby. If it's state is standby, connect to the other device (you can retrieve the "Failover.PeerIpAddr" database variable to determine the peers address if you don't have it hardcoded somewhere.
-Joe