Yes, you're quite right that SharePoint doesn't deal particularly well with this requirement out-of-the-box. If you wish to go beyond separating authoring/reading (typically accomplished with Content Deployment) and use different branding, then the only option is to do a fair amount of custom development.
In the end it comes down to using SharePoint mainly as a repository and editing platform - the other sites will use custom code to 'pull' data from the primary site. It helps if branding is the only thing which is different - if you are varying navigation/metadata/page functionality between sites, the complexity goes up hugely. I worked on a project where most of these varied between sites, and we used FAST search to effectively build navigation and pull content for landing pages according to rules. It's doable (using other approaches to this one too), but not without a lot of effort.
Assuming it's only branding, you'll need to look at building custom controls which can 'pull' the data from the right place in the primary site collection. You'd need to 'design in' some optimizations as you'd be bypassing many of SharePoint's OOTB optimizations since they are based off the current site collection.
All possible, but probably not in SharePoint's sweet spot.
P.S. The other alternative of course, is to have one site but with controls which know which branding to render, based on some flag. You'd need to consider how this would work if you need completely different URLs for the sites though.