3D device simulation of diode (static)
I'm curious, would an FEM library suffice for your needs? Although you may need to do some of the work implementing the solver for drift and diffusion, openfoam is a free library similar to comsol that could possibly fulfill your needs. Then again, perhaps the exact thing you are hoping to avoid is having to write your own solver.

Perhaps something like Meep?