It looks like FormatDateTime is not recognizing your system time as valid data for whatever reason. I'm not sure why that is. You can try skipping the formatting step by finding and modifying these three lines in the script to how they appear below and see if that sidesteps the problem:
h= hour(now)
m= minute(now)
s= second(now)
(Where you'd put 'now' [thats your unformatted system time] in the parenthesis instead of 't') Be sure to delete line 19 or comment it out.
Re: themes:
Since you're using a popup menu, it would work the same as the earlier example in this thread. Assuming you have your states set up (named to match each theme) and images applied to each state, for each Case in the popupmenu script, you would set the three objects of the clock to the matching state. Here's an example:
The option in the popupmenu script:
mainmenu.AppendMenu 0, 1, "Classic Theme"
Then when you select that, the result sets the state:
Case 1
DesktopX.Object("clockface").state = "classic"
DesktopX.Object("hourhand").state = "classic"
DesktopX.Object("minutehand").state = "classic"
DesktopX.Object("secondhand").state = "classic"
Repeat for each theme/state.