Mixed bit-depth alpha blitting causes unexpected color changes

I just ran into a very odd situation:

Load an 8-bit image to surface A.
Load a 32-bit image with an alpha channel to surface B.? All alpha values are either 00 or FF.
Create a new 8-bit surface, C, and copy A’s palette to C
Blit from A to C.? Everything looks fine.
Blit from B onto C, with C’s blend mode set as “blend”.

Expected: you end up with the image from B overlaid onto the image from A, perhaps with some color degradation in the B component.
Observed: you end up with the image from B overlaid onto the image from A, with some color degradation in the A component that’s showing through the 0-alpha portion from B!

Anyone have any idea why that is? I’d expect the A component to come through completely unchanged…

Mason