Actually, the fog doesn't seem to hide the island - there is a dome-shaped "shield" concealing the island from sight. The fog is likely a device meant to discourage boats from travelling too close to the shield. We know this because there is no other mechanism preventing passage through the shield, and as we clearly see in the scene with the German soldier, there is a defined "barrier" in place that is NOT the fog.
In that scene, the soldier sticks first his hand, then his head, through the barrier, the fog instantly disappears. This tells us that the fog itself is merely surrounding the shield. And we know it is dome-shaped because the point at which the German boats enter is further back from the beach than the point up high where Steve's plane fell through.
Without the fog, it's possible that the shield or barrier would appear as a shimmering effect on the horizon, which might actually attract attention instead of discourage it.
Note that this wasn't the case in the comics. The island itself wasn't hidden from sight, just small & remote. The only "magic spell" protecting it from invasion was that no man could set foot upon it unless invited. In fact, some ancient cultures would bring their orphaned girls to the Amazons, believing it a great honor for them to be raised by the women.
It should also be noted that the comics version of the island has gone through numerous changes over the years. At various points in its history, it's been moved around, even to space at one time. There was also a version where it floated around like a giant iceberg instead of having a fixed location on the map. The idea of it being invisible from the outside is not unique to the 2017 movie - that idea was also used in the animated film from 2009, where the island was not visible to Steve until he was over its airspace. And he was flying an F-35 with advanced radar in that one.