so it isnt that the dcc actually disconnects you? As for dcc stopping when you do the disconnect yourself, even tho the dcc should still continue (its client to client, not dependant upon the server after it starts), but disconnecting you leave the channel. the sender prolly will stop the dcc if you arent in the channel.
best guesses: a bandwidth limitation at perhaps your isp (many are doing that to stop file sharing from bandwidth hogging), or you are doing too many other things that uses up what you have, essentially not leaving anything left over for whatever is going on within mIRC channels.