You may be overcomplicating your file a little with the FOR command. This will accomplish the same thing (as it looks from the way you wrote your FOR command it looks like you have the NA date format.)
set day=%date:~7,2%
set month=%date:~4,2%
set year=%date:~10%
Or even better, if you were looking for a same line solution:
md %date:~4,2%-%date:~7,2%-%date:~10%
This doesn't help with the time variable, in which case I would say your best bet would be to use the FOR command to parse that out.