I spent some time trying to understand why a service that should have been started was not. It turned out rather simple - the service was WantedBy=default.target, I explicitly used "3" on the kernel command line and this made systemd to ignore /etc/systemd/system/default.target.wants.
Is there any reason to *not* treat systemd.unit as default in this case? After all, "default target" is the target that systemd starts when running as /sbin/init and passing systemd.unit is entirely equivalent to overriding default.target once at run-time.