You're setting the service as Type=simple, yet are using a PID file and manually daemonizing at the same time? This is blatantly incorrect behavior, and I'm surprised systemd even accepts it without loudly warning. Simple daemons are supposed to be daemonized by the supervisor itself, it's forking daemons where the PID file hack is necessary to hackily bludgeon them into a supervisor tree. Here, it's gratuitous and subject to race conditions.