Having used systemd on an embedded project by now, I can say from experience that legacy init scripts can just as easily be called via a systemd config file aka "unit file" as they could via the base rc script. I don't remember having to modify the base rc script which iterates through all the scripts in the appropriate runlevel, and analogously I do not expect to have to modify the systemd parser which iterates through unit files to decide what services need to be kicked off.
There is an option to stick the start/stop command lines directly in the unit files if they are single-liners, but if that is the case the main thing an admin might want to do is stick in a 'strace' or 'ltrace' of the daemon, and that can just as easily be done by editing the unit file as an init.d script.
The increasing list of dependencies for normal systemd operation on the other hand... can indeed be a pain for embedded projects. Even the requirement for cgroup support required a patch against the vendor-supplied kernel (yes many embedded Linux projects are *still* that out of date)