Each click should toggle isVisible of image:
https://www.babylonjs-playground.com/#XCPP9Y#637
I believe it's related to the new functionality at control level which makes sure controls can't be marked as dirty when invisible. I suggest to not _markAsDirty UNLESS it was called by the isVisible setter, that should fix the issue while keeping in mind the previous issue as well.
public _markAsDirty(): void {
if (!this._isVisible) {
return;
}