Wow this is amazing, it looks almost exactly like the original.
You can draw the shadows like this (attachment)
I suppose this could still be optimized. If the panels are all the same size it should be enough to store on shadow in the image and draw it under each control.