I don't get why extending Button and also declare a Button as a field.
Joseph is right: call
click() but pay attention on what,
this.click() calls the click on the CustomButton instance,
btn.click() calls the click on the inner declared Button field. As I say, I don't get having two of them.
Anyway take a look at TextButton and CustomButtn in GWT. I believe they can be easily used to achieve an image+text button.
Probably the quicker way is defining a simple image+text SafeHtmlTemplate and pass it to the Button(SafeHtml) constructor.
Choose you poison :)