Hi, I have the following answer:
When connecting to a mirrored database SQL client always attempts to connect to the primary connection specified in its configuration file first (Server=xxxx). This is why the failback works. If it can't connect to this server/database it will go for FAILOVER_PARTNER but this value has been overridden by the address sent by the PRIMARY server.