Using flags for language isn't really a great pattern. It kind of works if you only support a few languages, but when you support a lot you get into tough issues where many flags relate to a single language and many languages relate to a single flag.
There are thousands of languages the choice of languages to support logically ought to come from a cost benefit analysis of supporting a given tongue. European institutions are pretty much always going to be dealing with people that speak a wide variety of languages. Within the US we are talking about a market of 300 million wherein most individuals speak English as a first language or in addition to their primary language.
Doing business outside the US would almost certainly involve a lot more work than translating the website. This doesn't mean its a bad idea but its certainly a complicated decision.
Many countries have multiple languages (or scripts) unique to them. India, Spain, China are amongst these. You could use the Taiwanese/ROC flag for traditional chinese but you'd anger mainland China.
its a visual representation of a language that often conveys information to people whom speak an unknown tongue. Given an array of choices people may be able to pick out the graphic quicker.
Many EU sites have multiple languages sorted into different flags up at the top of the page. Ours do not.