Oh, sorry, ich hab's andersrum verstanden...
Naja, es ist doch klar, dass die transparenz-Informationen verlohren gehen, wenn du auf ein Canvas zeichnest, das das nicht unterstützt. Du könntest höchstens die transparenz-Farbe durch z.B. clBtnFace ersetzen.
Ich habe hier irgendwo ein Beispiel mit einer transparenten Png-Datei als Button rumfliegen. Ich such' das mal und poste das dann gleich...
Edit: So, da ist's. Es ist eine Beispielkomponente, die bei PngImage dabei ist. Ich hab' die noch ein bisschen modifiziert (neue Eigenschaft: pbsOnlyImage). Wenn du ein Package installierst wird die PngButton-Komponente automatisch unter "Samples" mitinstalliert.