Sorry for the "telegram" ;-)
I have been working all day yesterday using my functions using 'with-locale-environment' and I didn't experience any flicker.
On that side good. On the other hand, I still think that a macro only controlling the system-locale for the time functions may be useful despite, I admit, being somehow redundant. My feeling is that many of the settings changed in with-locale-environment don't need to be changed for format-time-string.
Digression: What about adding a third (optional) parameter to format-time-string to set the locale for a specific call? This could be an alternative which might be more-lightweight than with-locale-environment, wouldn't it?
Best, /PA