ISO 3166 has a a lot of legacy countries (edit: countries code ! not countries), not the ICANN fault. Like Guadeloupe, that is a French region, not a independent island (and doesn't want to be).
I should study why these code exists since there aren't UN members. Seems a lot political for me.