Well, on Core you would have the same issue because the session still wouldn’t be started (the session start happens as part of login).
Note that for future work, Multiple users and groups in snaps discusses both device access as well as specifying users to drop to. There is also https://github.com/snapcore/snapd/pull/2592 for login session services that use dbus. All of this is moving forward (albeit slowly), but we’ll get there.