Let's see if it's the add_cpoint() method making an issue first...
Easier that dabbling around in the Tool class point picking...
Try this in the Ruby Console with an empty v2020 model... does it add all of the 10 cpoints at 1" x-intervals? Works OK on PC...
model=Sketchup.active_model
ents=model.active_entities
0.upto(9).each{|x|ents.add_cpoint(Geom;;Point3d.new(x,0,0))}
If that works, then perhaps the Tool code is flaky ?
e.g. does it set the active_model up each time it runs, as all current models on MACs use the same SketchUp - unlike PCs ??