Tim,

I don't see that you have set continue_on_fail in your dp. (http://wiki.freeswitch.org/wiki/Channel_Variables#continue_on_fail)

Also, I'm curious to know if you deliberately are not ignoring early media on the first leg, the one with user/5420@communicatefreely.net. If you don't ignore early media on that leg then that leg will "win" and get the call as soon as media comes back. Just curious if you had a specific reason for doing it this way.

-MC