On multisite you tie each membership type to a domain id. You can find what the domain ID's by looking at the civicrm_domain id table (or in the civicrm.setting.php file).
If you create the memberships on the correct domain they will be correct I believe, but if you don't then just adjust the domain_id in the civicrm_membership_type table.
Then only the ...
We totally gave up on using sub-groups with the CiviCRM Multisite. This is too bad but really this seems to be far too complicated and very risky. That would also damage the work of people using different sites.
We use only the Domain Group S-group for Site S to be sure we have the right contact in the right site.
I wanted to post a belated update here, in case it helps someone else or could trigger additional discussion or action. Per Jon G, I emailed CiviDesk and got a prompt response:
We have developed multisite support for events in CiviCRM, and it has
been in production for several years now with one of our largest
customers. The code is public, but not ...
You could try adding a Custom Field to the events, and then use CiviCRM ACLs to restrict folk based on the value of that Custom Field. If that isn't viable then setting up civicrm to proper multisite might be a viable but complex route