"By all means the init system can *start* ntpd, but it shouldn't *be* ntpd."
Reading through various threads and bug reports about ntpd and systemd, it seems that some people experience various cyclic dependencies and race conditions, the very issues that systemd was supposed to fix. Some fixes for such dependency hell involve adding hardcoded delays, the very kind of hacks that systemd was supposed to avoid. It seems the only way that systemd can live up to its hype is by taking over everything, and ceasing to be the very thing it was meant to be, an init system. It's adoption by Debian and its derivatives seems premature to say the least. And the every increasing frivolous dependencies on systemd and its libraries is most unfortunate (if you switch a Debian installation to another init sytem, why on earth does installing CUPS or, even more bizarre, GIMP *require* you to reinstate systemd?)
For those who want a clean, elegant init system, with scripts that are usually just a few lines long, I recommend runit (as used in Voidlinux). In my experience it has faster start up and much lower memory and CPU load than systemd (which is helpful on a constrained system like an Rpi), and, unlike systemd, it is relatively easy to debug if things do go wrong. Unfortunately it can be hard to switch to runit on Debian and Ubuntu etc., given all the wierd systemd dependencies. So much for "preserving init choice".