I regard the CarPlay and android equiv (and just don't have the knowledge of the Windows approach) as the KISS option, actually. With those two apps (or three if they do Windows too), they gain far more than two apps for of results. If they don't, then how do they pick the "right" streaming service to implement? Whatever they choose, some will not find it useful or even actively dislike it. If they don't remove existing services, it starts to get cluttered, but if they do that will definitely cause complaints.
As they add more, they end up having to deal with app organization issues anyway. If they punt on doing their own development but instead of supporting the mobile auto interfaces like CarPlay they instead release their own API and have third parties do it, well, that can be great for some apps, but it's a lot more work for tesla, opens up new exposed surfaces to secure, and they still have to do the work for app organization. I still want them to do it, but don't see how it can be considered easier than implementing one to three new apps and gaining most of the world of devs and existing code already out there.
If they release their own API, App Store, etc., I think that'll be great for more specialized apps that use that API to get vehicle information to do cool, useful stuff with it. That's something that can't really be done as cleanly or easily, if at all (depending on API and visibility), from a mobile device that's remote displayed onto the big screen. But I don't see any big advantages as for just using an tesla API to display on the screen with no other advantages coming from running natively on the car's systems vs. running on the mobile device with the interface on the screen. For the non domain specific stuff, I'd rather have instant access to all the existing and new apps coming out every day without having to have tesla, or someone using tesla api's write it all from scratch.