I guess it depends on if you are trying to just touch it, in the case of a monster or character, or touch as many troops in a units and how deep the target is, the math is technically a bit different. Dwarfs throw this way off with their special abilities. What you really need is the kill zone of the Cannon shot. The heart of this issue is whether or not you accept 1" = 25mm, which technically isn't the case actually 2" = 25.4 mm which mean if you aim for the center of a 50 mm Monster there is no distance you can guess that get a hit twice (not just a pass through), but most would give it to you . Also this matters in aiming for the center of unit that is 100mm deep if you end up 2" short or long of the center you technically miss but most would call in a hit, since you are looking at only .8mm, especially with how units rank up and GW inaccurate base sizes. Its splitting hairs but its the math and the odds change based on this. Assuming most would give you 25mm = 1", Based on all this the best guess would be 8' from dead center on a 100mm Deep block and 8" from the from edge of a 50mm deep monster. The exception would be sniping a single model 40mm or smaller, in that case then 10" to the center of the model slightly increases your chance of hitting that model if you don't care how much of the unit you hit. I think this is pretty close to what both of you have listed. I think the guess range stays the same but the odds go up for Dwarfs based on the config of the cannon (not sure what empire can do).
100mm Deep Troop (5x5 block of 20mm or 5x4 block of 25mm) 8" From the center of unit
27.8% hit the whole unit
47.2% Get a partial of at least one model
25% miss the unit (including 16.7% chance of Misfire)
50 mm Deep Monster or Cav 8" from the front edge
66.6% to hit the monster
33.3% Miss (including 16.7% chance of Misfire)
Snipe a single Model (40mm or Smaller) 10" from the center
55.6% to hit or pass through the model
44.4% to miss the model (including 16.7% chance of Misfire)