Я сделал это один раз и использовал целое число indexPath.row, передав его отправителю кнопки (id). Это должно работать просто отлично.
Edit:
В:
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
вы создаете кнопку.
Тогда вы можете сделать это:
button.tag = section;
Вы прикрепляете метод к кнопкам
- (void) myMethod:(id) sender
и внутри должно быть что-то вроде этого:
[(UIButton *)sender tag]
Это должно сделать работу.