If the behavior was never fully specified (as claimed), then it might be worth having this just to see what it breaks and what bugs it uncovers.
But systemd is using cgroups and pam to do session tracking, and using su within that seems to break some elements of their tracking (or some concept within it).
Thing here is that su is doing the job it has always done, so frankly it is the systemd session tracking code that is in the wrong.
`machinectl shell` now implement that feature, with the added bonus of being transparently able to log into a local container (or possibly even virtual machines).