If all the rendering part of the engine is encapsulated in a separated class then it shouldnt be a problem. Instead of Direct3D calls you put OpenGL calls.
Indeed I dont fully understand why not to have a OpenGL rendered, it will have the same quality and it will make porting much easier.