There is nothing to fix.
Shadowmaps are not dynamic. They are calculated once and are not updated. Any change on playfield will not have impact on shadows.
I see one way to to make it works as you want, but it will be painful.
Lets sats with simple example: one light (bulb) and one drop target.
You will need to generate 2 shadows map: one with drop target visible, one with not visible. You will need to add second indentical light (bulb) in same place. In script it will work like this:
1) drop target is visible: you can turn first bulb on/off and second is always off.
2) drop target is down: firb bulb is always off, second bulb can be on/off.
Generation of that shadowmaps will require from you to save shadowmaps for first bulb when drop target is vislble and for second bulb when drop target is not visible.
After that step you will need to manualy modify stored in cache shadomaps file and later add it to texture manager. There is no way to automatic generate that shadow maps.
Now bigger problem: for 3 drop targets you will need to replace 1 bulb with 8 bulbs. One bulb = one drop target combination.
.... so, it is painfull.