If I run a command: "start-stop-daemon -S -m -p /var/run/test.pid --exec test" where "test" is a busybox applet, the pid stored in the "test.pid" file is one less than the assigned to "test" program. If the "test" program isn't a busybox applet the pids numbers are correct.
Can't reproduce. For me, pidfile has correct pid. Can you run this command under strace ant show the strace log?
The problem disappeared after reboot.