The method I use is quite easy really.
Use four seperate sprite images for the shield (same one loaded four times that is).
Once the collision has told you which shield has been hit, calculate the X and Y position of the contact point and paste that image onto a hidden bitmap.
Use a loop and POINT to scan up the image to skip over sections that have already been destroyed. When you find the actual edge of the shield, remove a chunk.
Grab the deformed image and use it to recreate the shield sprite.
That's about it in a nutshell...
TDK_Man