no se preocupen ya encontre una forma de resolverlo con la ayuda de la ayuda del C++ Builder xD! falto un if en esta parte
Código:
if(clip->HasFormat(CF_BITMAP))
{
bmp->Assing(clip);
// demas codigo de esa parte
}
//obviamente aca libero la memoria del canvas y del bmp pero ya para q lo escribo xD
Gracias x las intenciones de todas maneras espero que pueda servirle a alguien en el futuro.