I think createGraphics() will do the trick for you. It lets you draw/place things on another canvas, which you can thereafter place anywhere on top of your regular canvas. You can combine all three images on a single createGraphic, or place each image on a separate canvas so you can play around with the stacking order.