Are you refering to the list on the Wikipedia?
I am sure you read this on the Wiki page
The ICAO codes have a regional structure, are not duplicated and are comprehensive. In general, the first letter is allocated by continent and represents a country or group of countries within that continent. The second letter generally represents a country within that region, and the remaining two are used to identify each airport. The exception to this rule are larger countries that have single-letter country codes, where the remaining three letters identify the airport.
FS9/FSX is fully compliant to this list except the C, K, U, and Y Code.
In your post you say
I believe more than one country can have the same region code; hence in the case of duplicates there is no easy way to know to which country the navaid belongs.
There are many different duplicates in the default Navdata. FS9/FSX shows what Region Code if duplicated belongs to what country in the default GPS receiver. There is a menu list on one of the screens that show any duplicates when selecting a NAVAID. The list is there also to help the Pilot know that he is selecting the correct approach based on the duplicated code for the correct Region.
The GPS uses a search feature to look for and show the duplicates including VOR, NDB, Waypoint approach ILS Navdata for different Countries and Regions.
Example is there are 32 NDB's with the Identifier of the letter "F".
These NDB's range from Canada to South America, Australia, China and Russia. The GPS receiver searches the database and then within the list tells us what Country/Region each NDB belongs to. this can be done with any type Waypoint or NAVAID.
I still am somewhat confused on what your objective is. You keep refering to Country codes missing but never say what you are trying to accomplish. If I understood what is important for your project then my answers may be better.