The "--" in there is used to separate start-stop-daemon's arguments from the ones passed to your executable. So, the myPgm you have after "--" is actually supplied as an argument to your myPgm executable. I think it's extraneous in your first example.
You need to use "--" to split valgrind's args out, like this:
start-stop-daemon --start --background --exec valgrind -- --tool=memcheck --leak-check=yes --log-file=/usr/magnus/logFile ${BINPATH}/myPgm