Вы добавляете кнопку через Interface Builder или делаете это программно? В любом случае, вы можете использовать эту строку кода, чтобы установить границы изображения:
yourButton.bounds = CGRectMake( 0, 0, yourImage.size.width, yourImage.size.height );
Если вам нужен полный пример, вот тот, который я использовал в одном из моих приложений:
UIImage *image = [UIImage imageNamed:@"audio-off.png"];
UIButton *myMuteButton = [UIButton buttonWithType:UIButtonTypeCustom];
myMuteButton.bounds = CGRectMake( 0, 0, image.size.width, image.size.height );
[myMuteButton setImage:image forState:UIControlStateNormal];
[myMuteButton addTarget:self action:@selector(mute) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *myMuteBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:myMuteButton];
navBar.leftBarButtonItem = myMuteBarButtonItem;
[myMuteBarButtonItem release];