Hi Fabricio, In fact, the main problem with failover, as far as I know, is that pfSense only checks that the physical link is up and that the local gateway is pingable.
I bet you're using DSL connections with local ethernet links to reach each gateway. Sadly, this means that pfSense will only do failover when the local ethernet gateways are down, which might never occur, even if the DSL links are down. Hope this helped. Benjamin.