Widget stays on screen even if asked to remove from parent??!!??

I know this is an old topic but I just want to clarify why such things occur, I am having the exact same issue and solved it by using Do Once node. Most probably your event of which you created your widget fires multiple times resulting your widget to be added to the screen multiple times also. Try using do once node to eliminate any possible duplicate widgets.