There is a problem with the Window#clip_to rectangle. The C code does
right = x + width;
when it should be:
right = x + width - 1;
Gosu then does:
int physWidth = std::abs(left - right);
which means that clipped width will be one greater than requested. Similar with physHeight.
(Error found in
Gosu::Graphics::beginClipping)
I found the effect in a couple of my games, but only just realised that it was almost certainly a bug in clip_to, not my code.