Clamp draw buffer size to a minimum, in order to avoid crashes.
When a framebuffer size is zero the reported status by OpenGL is (correctly) not FRAMEBUFFER_COMPLETE. We can't avoid creating a draw buffer for this, since we need to be able to execute actual GL calls. We could return an error, but I don't think that's what other implementations do. Instead, clamp the draw buffer size to a minimum of 16 pixels.