In my original post, I have the flag
code:
 DeleteWhenDone=1 

So the job gets deleted as soon as it is finished running.
If I run the above recommended script to delete the job,
I get an error because the job does not exist. I tried setting the flag
code:
 DeleteWhenDone=0 

and then run the above script to delete the job in which case,
the job gets deleted without errors. In either case,
my original script still fails with same error.

There are couple other interesting things to note:

1. Once I run my batch file with the specified credentials
and successfully schedule the job, run it, and delete it,
I cannot schedule any job with those credentials again
(that is, even if I change the job name). I get the same error.

2. I was able to run my batch file and schedule the job
this morning with the same credentials which was failing last night.
And now I cannot run it again. But I am sure it will start
working in several hours. Which tells me that the local security
database eventially purges the credentials. I don't know
what governs that time out or if I have any control over it.

3. Another piece of information is that when my batch file fails
and I get the error, the job still gets set in the scheduler
but with the logged on user's credentials instead of the credentials
supplied on the command line. And the job never runs either.
It just sits there and does nothing.

Sorry for these long emails but I think I need to explain
as much troubleshooting informatiuon as I already have.

Thanks you again for helping me out with this.

Anupam