I would agree with those who stated that the reason of the geographical ignorance of many people lies in their inability to see any benefit in this knowledge. The teaching technics are secondary.
I can give you an example. My Russian friends love to make fun of the perceived "American ignorance". They think that they were taught well in the Soviet schools. OK, I have visited my classmate, a chess champion and the author of some MS Windows-related books. So, he is not dumb. And, mind you, we had the same geography teacher! My friend lives in NY for almost 15 years and next morning he is going to drive us to the Port - we are going on cruise! So, he asked me - where are you going? Answer: "Boston, Portland, then - Canada and back"
His next question was - "Are you going to Alaska, too?"
The guy has a very good education, good brains, he lives right on the coast of the Atlantic, he sees the map of North America EVERY DAY when he watches the weather report on TV and he thinks that Alaska goes from the Pacific to the Atlantic ALL THE WAY!!!!
In the same time, he is a big fan of soccer and of Italy. So, almost every year he goes to Italy to watch some matches during his vacation. And (due to this!) he knows the Italian geography much better than the American one...