It seems as though you’re not taking the width of the cut into account. If you measure the dots center-to-center, they should be spot on the commanded distance, but a rectangle cut to the same dimensions will be slightly scant due to the kerf.
You should calibrate the step/mm (or mm/step) values for the X and Y axes:
I used an accurate scale and the red-dot pointer on my OMTech laser:
After calibrating those values, you can measure the kerf and use that to compensate the size of the objects:
The kerf width depends on the material and, for diode lasers with rectangular spots, the cut direction, so you will need specific tweaks for critical objects.