I finally made it:
in order to operate color, I have to overrule standard behavior
set full set of styles using setStyleSheet
handle events
manage flow
And I gave up to use it at the end:
a lot of custom code with a doubtful outcome
ugly design
not clear flow
Solution:
I use the standard functionality of the standard button. Better explain to the user what "it works and feels the same as all other buttons in Windows"