I think this is not possible with the Windows XP task scheduler. The only way I could imagine is to schedule a task which is periodically. For example run it every Saturday each 30 minutes. Then instead of launching the backup directly you launch a script (e.g. CMD script). This script checks whether it has been run already on this Saturday. For example by putting a simple flag into any file. If it has been run already, then just skip execution. If it has not been run on this Saturday yet, then execute the backup.
Well. this is pretty inefficient though. Of course this check would run every x minutes just to do nothing except the first time it's run.
With Windows Vista/7/2008 there is an extended task scheduler available which also allows to configure a task to run as soon as possible after it has been missed. So scheduling it to Saturday morning 00:01 and enabling the "Run task as soon as possible after a scheduled start is missed" would run it either directly around midnight or immediately when the machine is turned on the first time on Saturday. Unfortunately I think this would also make it run on Sunday if you do not turn on the machine on Saturday at all.
Anyone having a better solution?