I think I know what would make multiple profile support more usable. Why do we switch? To use an app or to react to a notification. If we could have an application in a profile A and an application "stub" in the profile B...that "stub" would be uniquely linked to a specific profile and specific app. Starting this app would initiate the profile switch and, if possible, launch that specific app after the switch. And if we could somehow connect the cross-profile notification from the original app to that matching "stub" in the current profile, this would allow the notification to use the custom sound etc. Overall, still disconnected enough.
Of course, this would reveal the existence of another profile and that specific app in it. But the creation of such a "stub" would not be mandatory, so everyone could make a choice.
Just a thought.