Hi,
I hope, you realize that not only all the teeth in one quadrant are different, but each tooth has different flanks. I once wrote a VBA program for this, however, it's not ready for prime time. It puts out a polyline for AutoCad that, I am pretty sure, can be turned into an extrusion by almost any program.
I will not release this thing to the public, but if you want, let me have your data and I'll send you the result. Keep in mind, however, that it is written to accept diametral pitch and, therefore, does not allow you to e.g. specify elliptical axis.