A pretty interesting explanation. I had never thought of the distinction - Danish seems to have roughly the same principle as English.
Since Ukraine is not an island, the potential distinction does not exist in this case. It's awkward in Danish to make proper nouns definitive.
“I’m on Manhattan” and “I’m in Manhattan” both sound like fine English to me, the former having the connotation that you are specifically referring to the physical island rather than the political subdivision (borough of NYC) that roughly corresponds to it. But nobody would ever say “I’m on Jamaica” unless they were trying to advocate for some extremist political view that it’s not actually an independent country.