Try setting the fallback to the vertexlit shader. Fallback "VertexLit" I haven't tested it out my self but from my knowledge of the rendering pipeline, I can assume that it will work. Basically, if (and in this situation it will) pixel based diffuse lighting fails, it will look black as there won't be any lighting to compute, it needs something to fallback to, vertex lit.
This edit allows you to preserve the attributes of surface shading without having to stay in deffered or forward rendering paths.