@eelcoh I believe in this case Element.Input.textKey is actually what you need to use. Quoting the docs (emphasis original):
Style Elements renders a text input using defaultValue, but if the value changes in your model, but not as a result of the input onChange event, then your input and model will get out of sync.
So, if you manually change the value of a text input in your model, you need to ensure this key changes.
A common way to do this is to maintain increment a counter whenever you manually change the text.
This option will be removed as soon as this bug is addressed farther upstream.
So if it feels awkward and like a hack, it’s because it is.
In particular, I’d strongly advise considering migration to the same author’s stylish-elephants library, as it seems to have this bug/hack fixed — at least for me it worked OK out of the box, while I had to use textKey previously.