You obviously didn't get what I was saying.. It's not a bug, it's the way mIRC DCC connects. My suggestion is to make it try to connect "both ways" (whichever ways those ways are), because one of the ways connects, the other doesn't. If It tried connecting both ways, then it is logically safe to assume that It would always connect, at which point it could then start the transfer.
It's the way the network works dude, it's not a bug in mIRC.. A lot of people connect to mIRC while at work, and most of those people are behind a firewall and they cannot forward the information coming in on the DCC ports to their machine. The connection can be initiated, however, it just has to work in reverse to connect. Get what I'm sayin?