Take a compass heading. Snorkel in. Face down. Swim side-by-side with your buddy (so you continuously keep track of him/her), fully kitted, with minimal* air in your BC, pulling a dive flag. Periodically look up to reassess your heading.
This is precisely how I learned to do long surface swims in open water when recreational diving.
For the open water checkout I went through (NAUI/YMCA, in 1987), we had to swim this way for 1.5 miles one way, and then return. My college sophomore daughter, currently taking the same scuba course, will have to do this same skill in a couple of weeks when she goes through her open water checkout.
I've had to do this a couple of times, unplanned, IRL, most notably during my very first dive trip to the ocean (FL Keys) in 1987.
I don't see the issue. Am I missing something?
rx7diver
*Actually, we wore a full, two-piece, 1/4" wetsuit, a full old-school steel 72, and a Scubapro Stab Jacket that was completely empty, with our weight belt configured with solid Pb weights, and we were "correctly" weighted.