I was looking at this the other day on another thread. Systemd expects a service to run in the foreground by default (Type=simple). As the forking process exits systemd will kill the whole cgroup for the service.
The Ubuntu .deb has a systemd service that uses simple and a default /etc/mongod.conf with no forking.
The RPM mongo version I looked at the other day(Centos 6 or 7) has forking enabled and the systemd has Type = Forking. The RedHat package also “fixes” any permissions errors in the PreExec stage.