Twitter compresses large PNGs into JPGs (which don't support transparency), causing your beautiful transparent background to turn black or white.
The Fix
Twitter keeps 8-bit PNGs transparent. Or, to be safe, convert to a format where you control the background color. If you don't strictly need transparency, convert to JPG to ensure it looks exactly how you expect.