You don't need the effects framework to use shaders, you can still just write a shader and create/bind it directly (for example, using this function for vertex shaders and VS's built-in HLSL compiler or D3DCompileFromFile).
You can achieve this by literally rendering the object multiple times, changing the shader that is bound each time, and setting the blending mode to do additive blending if that's what you want. However, that seems costly.
You could also just write a single shader that performs the appropriate computations for the diffuse term, direction lighting term, and reads the color from the read and modulates it by the lighting terms. This way you avoid the overhead of repeatedly rendering and changing shaders, and you get a bit more control over the way your color terms are combined (blending with the framebuffer isn't fully programmable, you can only pick from a pre-defined set of options, so that limits you somewhat).