The thing about depth charges is the "depth" part -- they sink to a specific depth (set just before deployment to whatever depth you think the submarine is) so that they're as close as possible to the sub when they explode. If the explosion were on the surface most of the blast would go up (where the low-density, easily compressible air offers minimal resistance) rather than downward to any significant depth.
But Gameplay > Realism. We have advanced weaponry, why not just replace all PD guns with lasers and have them shoot down aircraft as well as surface targets? They should have no trouble dealing with artillery shells, tac and strategic missiles, even Novax satellites... All your "Reality + 1000 Years" arguments could be made here too. But that would (in my opinion) be BAD for gameplay.
I LIKE needing different weapons to deal with different enemies. It's not like we don't have ways of fighting subs. Torp bombers, subs of your own... there's even a unit called a Sub Hunter. That's what they're for. The groundfire mechanic is a mistake, someone forgot to check that the AOE stops at the surface.