Newbie with a vexing conundrum:

I've specified a cylindrical pocket, 20 mm diameter, 18 mm deep (see attached CamBam file and generated g-code, as well as a photo of the finished part).
What is generated is a pocket, exactly 19 mm diameter and 23 mm deep.

I've verified that the end mill truly is 8 mm dia and that the mill is not skipping steps.
I've searched this forum and examined the various settings, both in CamBam as well as in Axis on LinuxCNC.
Postprocessor used is that for LinuxCNC. The resulting part has a perfectly smooth pocket with (nearly to the 1/100 mm exactly 1 mm too narrow hole that is 4 mm too deep?
What could have caused this?

Thank you in advance for any suggestions!