the SegaCD was limited to one 16 color palette for *all* the scaling/rotation and was limited to 30fps at best (small window) and much less FPS for full screen window(scaling/rotation).
Explain Soul Star. Looked like a lot more than 16 colors to me, and there was a lot of full screen scaling there. Same with Batman Returns, a game with what I consider better-than-NeoGeo scaling. Very few games did the scaling well, though. Too bad the SNES could only scale a background.
It's simple really - the scaling IC for the SegaCD creates a bitmap to upload to the VDP as one of the display layers. The VDP can only upload up to ~7.38k per frame (during vblank via DMA). A fullscreen scaling/rotation/whatever frame at 320x224 takes 35.8k of unique tile data. That would require 5 (4.8 ) frames to upload all that planar bitmap data (not to mention wasting VRAM on double buffering). That's about 12fps for fullscreen scaling/rotation/whatever. A smaller window(bitmap) takes up less memory, less frame updates, and therefore faster FPS.
Regarding the 16 color limit, it's difficult to explain but each tile only holds 16 colors (out of 4 palettes), there is no way to have one tile color overlap (think scaling larger) into another tile data that contains a color that's not it that specific palette - within a single layer (BG, sprite, or as a fixed window).
The SegaCD has no way to interface directly with the VDP and that's why it has these limitations.
As for the SNES, I have the 800+ page develo manual and there's no mention of sprite scaling/rotation. Just a single BG layer (with 256 color tiles and up to 60fps via HDMA). And from what I remember the SNES addon chips (SFX, C4, etc) don't interface with the sPPU video processor either like the SegaCD so any sprite scaling is done via the same method, except the SNES's DMA is a little slower running around 5-6k. Byuu or one of the other SNES emu authors would know more on this that I, though.