I have not been able to build Shoes from source on my machine, but the following line looks suspicious (line 3410 of shoes/shoes/ruby.c):
shoes_edit_line_draw(VALUE self, VALUE c, VALUE actual)
{
SETUP_CONTROL(0, 0, FALSE);
#ifdef SHOES_QUARTZ
place.x += 4; place.ix += 4;
place.y += 4; place.iy += 4;
place.h += 4; place.ih += 4;
place.w += 4; place.iw += 4;
#endif
For list_box (line 3552) and button (line 3388), the code only appears to change the heights.
#ifdef SHOES_QUARTZ
place.h += 8;
place.ih += 8;
#endif
and
#ifdef SHOES_QUARTZ
place.h += 8;
place.ih += 8;
#endif
respectively. However, I do not know enough to determine if this is incorrect.