If it can't hold a .001" tolerance it's not a good CNC machine to begin with.
The only things necessary for ANY tapering machine are control over two axes ("X" and "Z"), a method for smoothly rotating the part, and a cutterhead. This is why there are so many different configurations out there - including the relatively "crude" traveling frames mounted on tables saws. On a side note, I used a tablesaw rig for years, and that same unit is currently being used by Jerry McWorter - in case anyone mistakenly thinks I am disparaging that method.
As for the concern about a "learning curve", I own a lot of very sophisticated programming software - easily capable of full 5-axis work. However, I almost always write tapering programs directly on the computer that runs my machine, using only paper and pencil, and a pocket calculator. This is because G-code programs for such a machine are SO simple it's not worth creating a CAD drawing to begin with.
For example, suppose we want to cut a nose piece to be 12" long, with a diameter of 0.850" at one end, and a diameter of 1.050" at the other. Ignoring opening program statements, feed rates, and initial rapid moves, the significant portion of that program would look like this:
G01 X0.425 Z0.0
G01 X0.525 Z12.0
That's it! That's the entire code necessary to cut the above described taper. Now obviously a more complex or compound taper would require more complex code,but the real point is if you can draw out what you want (for a turned shape) on piece of paper and apply numerical values to it you can easily write the code to cut it. In the above example I assumed machine software that was NOT setup for diameter cutting, so I used half the desired diameters for the X-axis values. In the real world most lathe-suitable software (e.g., Mach3) allows you to use full diameters written into your G-code, with the software configured to automatically divide those values in half for the X-axis travels.
A few other points:
It's a very good idea to rotate your part using a variable speed motor, and also to be able to vary the speed of your cutterhead. With the additional ability to vary your travels speeds in the G-code program you can very precisely dial in those three variables to give you a very accurate, butter-smooth finish on your cuts.
If you are building your own CNC tapering machine it's important to be a precise as possible in your construction. That said, you can very easily "tweak" your G-code to negate any misalignment you might have between your headstock and tailstock. For example, suppose you ran the above example G-code and your small end came out perfect but your large end was 1.070" diameter (instead of the desired 1.050"). You could simply edit the second line of code to read: G01 X0.515 - thereby reducing the large diameter by the 0.020" it was oversize.
Once you have any particular G-code program perfected you have it forever. The number of these programs you can have stored is only limited by the size of your hard drive, and since a typical tapering program will only be 1 or 2 kb in size you could literally have millions of different tapers "in stock". Imagine having a warehouse full of manual taper bars at your disposal...
I haven't use a manual tapering machine in well over 2 decades, and I would never go back. Why would you drive a horse and buggy when you can easily own and operate a pickup truck?
TW