A perfect maze, by definition, is path-connected and loop free.  It is equivalent to a spanning tree on a graph in which nodes are blocks in a grid and edges are up/down/left/right adjacencies. Anyway, I drew one with OpenGL/GLUT for Computer Graphics class.