The schedule task provider seems to not be applying changes to the resource after it has been initially set. For instance, if I perform a new puppet run after changing the arguments, the change is not applied.
I believe the above is covered in
Also, possibly related: Puppet tries to change the command name of the resource every puppet run to match the same casing of the executable. Unfortunately it seems this change never persists, and the message informing the user of the change, occurs every puppet run.