Is it possible to clip a whole widget subtree using a circular shape or image

Look at this post:

You could use a similar approach.