I've been thinking about this situation, since I'm building a site that will eventually run on multiple domains with the same kind of customisation story. Sometimes different logos or stylesheets and other template tweaks will be needed, and in most cases
the sites will display different content but will still need to pool users and content all from the same database.
What I'm thinking about is some kind of "Multiple Domain" module that will enable this. Actually, customising the theme for each domain is already pretty easy. You can implement a theme selector which is an existing interface in Orchard, and pick the theme
based on the domain. Each theme can inherit from the same base theme, and then you can override whatever templates you need specific to that site.
Displaying different content might be another matter entirely; since in RoutePart the URLs are hard-wired to the RoutePart.Path field, via RoutablePathConstraint and ItemController, I'm not sure if there's any way around it without just replacing the whole
routing mechanism. But, since I'm already doing that (for other purposes), it would be feasible to add multi-domain support into my routing.
Another way to look at it might be as a kind of Versioning or Localization that's based on domain instead of other attributes. Haven't looked into them yet to see if it's possible to hook in in any way.
Anyway; it's not something I can get stuck into for another few weeks, but it's definitely something I'll be needing so I'll try and help out if you're having a go!