A Hack to Fix the Problem
I've got a hack that worked PERFECTLY for me. I've tried to make the instructions VERY explicit and easy to follow, so there are more of them than I'd like. The worst case scenario in this is that it doesn't work and you've got to go to Apple to get them replaced. But I promise it's REALLY easy.
1. Buy some Scotchguard or some such.
2. Carefully--using your fingernail--separate the two parts of the controller for the headphones. You'll feel the little clips unsnap. Don't worry, they won't break or anything if you take it slow.
3. On the side that's still connected to the cable, you'll see three little contact points. At each end you'll see wires leading into the little board with the three contact points.
4. Spray the heck out of it, being sure to soak the wires that lead into the board with the three contact points. You don't want to create a pool of the stuff, but you want to give it 30+ seconds of dousing. If you get pooling, don't worry, you can just turn it over and let the excess drip out.
5. Use a hairdryer on high output (most air output), alternating medium heat and no heat to start the setting and drying process. Do about 15 seconds on medium heat and 45 seconds on just air.
6. Alternate like this four or five times.
7. Let the headphones dry overnight with the controls still open.
8. Next morning, carefully re-attach the other piece. One thing about this is that you want to make sure that the two little flaps of metal that stick out of the non-cable-attached piece slot into their spots. I found that if you start re-attaching by placing the little flap in its slot, the other one will snap right into its spot.
Bingo, no sweat or water problems.
Oorah.