We did the gas-cap dance a couple times...the Ford dealer is an hour away, so that gets old quick. They finally decided it was a faulty sensor...they replaced it, and haven't had a lick of trouble ever since.
Also, check the cap to make sure it's venting properly...it's typically not that it's on loosely, it's that if it doesn't vent, it creates a vacuum. Try this: when the light comes on, pull over and remove the cap and see if the light goes off with the engine running, and the cap off. Keep in mind that you may have to wait 30 -60sec for the sensor to re-sample. If this works, it's not venting...check the cap out for a mis-aligned gasket, etc... or just replace it.