Size limits on TBitmap

I am using TBitmap in a TImage component to allow me to directly control the
resizing of bitmap using a generic scaling algorithm. The implementaion
works well, and when a user wants to scale an image, they only need to
specify the scaling size (e.g. 250%) to zoom in or out on an image. However,
depending on the amount of video memory in the PC, an exception is thrown
whenever  TBitmap is scaled to something huge. E.g. on a PC with 8 MB video
card, an exception is thrown when TBitmap is pushed past 10000 x 6000 pixels
(24 bit color in all instances ~ 180 MB), while a 32 MB video card handles
it quite nicely. Both PCs have 512 MB of RAM - but it appears that video
memory has little to do with it.

I don't know much about the Windows GDI - is there a way of performing some
limit checking to prevent TBitmap from croaking? Does TBitmap just wrap the
GDI, or does it have some video memory calls I'm not aware of?