I believe that the reason dave asked is that some forms of nat will change the port within the ctcp that mirc sends out, which could conceivably cause a problem. mIRC might be sending out a port in the right range, only to have the nat change it in the outgoing ctcp. Ideally, the reciever would connect to that port on the internet side, but the router would remap the traffic internally back to whatever port mirc picked in the first place.
If you haven't already, you might try opening a debug window (/debug @debug, for example) and try an outgoing dcc. look at the port number that is sent out and compare it to what the reciever sees.