How to update preview when custom setting changed in my custom widget

As a role of thumb, you should not extend widgets that you do not control unless their author specifically gave guidance on how to do that. Extending is somewhat easier on the PHP side, but it is hard(er) to extend UI with JS if facilities were not put in place in advance.

A safer (at least from ease of development perspective) way is to “fork” the widget code. Take the code, make whatever modification you need to it, and call the widget a new name, or depending on your needs you can override the “official” name (unregister the original, and register yours under the same handle).

This will mean that with each new version of WC you will need to make sure that you do not need to update your code to reflect a change in the “original” widget, but most likely you would have needed to do that even if you were just “extending”.