Если вы создали эти пользовательские ячейки в том же NIB-файле, что и контроллер, то я считаю, что проще всего создать ссылку на них (объявить их) и создать для них выход. Вы не хотите удалять ячейки из очереди или создавать новые, поскольку у вас есть один и только один экземпляр вашей пользовательской ячейки. (Если вам нужно больше экземпляров вашей пользовательской ячейки, вам нужно создать их в отдельном файле пера и использовать механизм очереди.)
в файле .h:
UITableViewCell IBOutlet * shopDetailCell;
Тогда в cellForRowAtIndexPath вы можете просто:
UITableView *cell;
if (indexPath.row == kShopCellRow) {
cell = self.shopDetailCell;
cell.shop = self.shop; // etc. whatever initialization you have to do
return cell; // do this at the end of your if statements.
}