I have a bad habit called fixing things that ain't broken... Bear with me!
See system expressions in the manual here
Notably:
time - counts time since the game started, includes timescale
wallclocktime - counts REAL time, no timescale
zeropad - pads a number with ceros
Why time or wallclocktime expressions? Because adding dt every tick actually may not be accurate, so I suggest keeping track of the time instead. When you start the counter, add current time to a variable. For countdown, add time + seconds. Then every tick you display variable-time and it shows seconds that passed.
If you want more precise timing, down to tenths or hundredhs of seconds, you can use the dt counter. Within one second, the inaccuracy is not that big anyway.
How to display time as minutes and seconds? Easy...
Set text to zeropad(2,floor(time/60)) & ":" & zeropad(2,time%60)
The first one shows minutes, padded by leaded zero when needed. Floor is there to ensure it is a whole number.
The middle one is just there for aestethic purposes. :P
The last one shows seconds, padded by leading zero.
I think, at least.