Why companies that create native mobile apps are forced to make duplicate versions on other platforms?
Duplicate here refers to the functionality only.

Imagine you were making a row boat out of oak, or out of pine... not quite the same thing.

Android and iOS platforms in particular encourage you to program in different languages, Java or Swift, which can be very different for highly complex apps.