You have a few different layers of software, first is your techno interface, is your machine stepper or servo? if it is stepper is it running on the techno interface?
if it is servo is it running on isa or pci interface? the interface is what interprets the g-code to make your machine move. both the isa and pci work pretty well. the isa is not supported as the isa buss is no longer supported very well by manufacturers.
the first layer is whatever you use to generate your geometry, (
cad) if you are going to do instruments I suggest that you fine something that will create very smooth spline curves and very smooth surfaces. next layer is the
cam layer. It generates the tool path and adds the cutter compensation. if you don't have this capacity in your software, it means you have to draw every thing with that offset in mind.
start researching the cost benefit and time investment of all the packages you can find out there on the net. keep in mind that what is made to look easy in a sales pitch is often harder than it looks, especially at the beginning.
step one really think through what you want to be able to eventually do with your machine and make sure what you get will get you there so you only have to learn one system and then learn it well.