no, it is not a hack.
Dark theme is a combination of two things: a refactor to move out hardcoded colors (they are everywhere) and the theme itself.
the cursor color is also a hardcoded value someplace there (not the fault of the theme :P).
but... #installFullTheme should be used between dark and lighter themes to restore all values.
If you choose dark theme, to go back you should first execute:
Pharo3Theme installFullTheme.
that should restore everything as before.
so well� I do not like the theme design, but the dark theme is following its guidelines. Then is not a hack, but it has some limitations :)
also, that�s why it is integrated in Pharo4 and not in Pharo3� most probably it need some iterations until is ready.
Esteban