The problem is Nintendo's servers. If only they would use better servers, one that can detect who remains online after a "Communication Error", then DCs would drop by the thousands. The kicker is the fact that better servers probably won't come into play until X and Y are released (and for the love of god, no cart-based penalties please.)
I've actually been thinking about this. If your game/DS can tell you it wasn't your connection that dropped (by not prompting you to reconnect to Nintendo WFC), having the server note that the D/C was not your fault shouldn't be that difficult. And if a server side solution is possible, it baffles me why they want to wait until the next gen before fixing a very prominent problem. Is the financial cost so great that they refuse to improve their online experience for their biggest fans?