You should draw your images with effects on a software surface and then blit that to the backbuffer, it's a pain to organize as you usually want that stuff on top, the simplest alternative is to use pre processed images (like if you want to make some image rotatable, you could store it's variants already rotated is a couple of directions and then use the image closest to your wanted direction when drawing), if you really want eye candy at acceptable speeds then DirectDraw is not the way to go.