Your expensive parts likely go through many steps before and after manufacturing already that involve things like fixturing the material in place, rotating it and reacquiring datums, running taps through by hand, deburring sharp edges, etc; you should not expect 3D printing to be as easy as sending the STEP file to the machine and getting a complete part out. Sanding, acetone vapor polish, drilling, reaming, tapping, etc. are normal parts of the manufacturing and prototyping process.
My models for FDM often include a “hole size compensation” user parameter and I tweak it to introduce an offsetting bias in through-holes. (Non through holes tend to get heat-set brass inserts, which are more forgiving of the 0.1mm or less radial errors.)
For a circular hole, as far as I can tell the slicer commands the hotend path to trace the circle exactly, rather than tracing a slightly bigger circle to account for output thickness.
I imagine if you were to use smaller nozzles the issue would be lesser, but not gone.
Reaming or boring are the route to tight tolerances.
I'm use to software where it either compiles or it doesn't, it either works or it doesn't. In the real world with physical objects it's much more a matter of "is it close enough or not".
I have no idea why this is standard practice and when building out http://MajikBus.co ran into minor issues.
better solutions, rather than making exactly sized holes, is to increase the number of vertical walls, make the hole size slightly under, and use a precision drill and reamer to get to the target size. Also, make sure you're setting your scaling right (for example, I need to set my object size to be 100.6% of its designed size, because PLA shrinks when it cools).
The simplest dimension to control is the perimeter. That can, for most parts, be perfectly accurate because there are no constraints on where the nozzle needs to avoid. However if you print a hole close to the edge of a part then the printer somehow has to lay down both an accurate edge to the hole while maintaining suitable separation from previously printed stuff. Essentially your design is quantised by the nozzle diameter within the perimeter of the part (I may be wrong here, but this seems like a simple explanation). You may have better results if you tune your part to the printer/nozzle you're using so that the slicer doesn't have to worry about leaving/filling gaps that are non-integer multiples of the nozzle size. In theory this shouldn't matter, because the hole perimeter can also be printed first, as it's an "outside" edge, but it doesn't always seem to work that way.
Minimum size line segments and other things come into play on holes less than about 0.2"