> Apple could also make those APIs usable by the public and mark them as "Unstable".
No they couldn't. Because those APIs would become frozen and required by nature of large software vendors deploying software that uses them. Functional compatibility of an API which was documented as not finished would have to be maintained across OS releases.
I've seen unintended dependencies have a deprecation plan in macOS that takes years.
For the most radical example, there is still a copy of libssl.0.9.7.dylib. The 0.9.7l version came out in 2006. But it turns out OpenSSL does not provide binary compatibility even amongst patch releases.
This was likely why on Mojave, using "Marzipan" in your own apps required making operating system security changes (from recovery mode, no less).