ReloadRowsAtIndexPaths do UITableView: (NSArray *) indexPaths que não causam uma recarga, a menos que você a chame duas vezes?

Tenho um UITableViewController gerenciando um objeto UITableView em um aplicativo para iPad. A visualização da tabela está ligada a uma constelação bastante complicada de outros objetos. Estou tendo um problema quando solicito que recarregue uma linha da seguinte maneira:

//indexPath is an NSIndexPath with indexes 0 and 0.  At the moment, this is the only cell in the table view.
NSArray *array = [NSArray arrayWithObject:indexPath]; 
[self.tableView reloadRowsAtIndexPaths:array withRowAnimation:UITableViewRowAnimationNone]; 

O problema é que a linha não é recarregada. Nunca há um retorno de chamada para cellForRowAtIndexPath.

O louco é que, se eu chamar reloadRowsAtIndexPaths duas vezes, a segunda chamada acionará a recarga:

//indexPath is an NSIndexPath with indexes 0 and 0.  At the moment, this is the only cell in the table view.
NSArray *array = [NSArray arrayWithObject:indexPath]; 
[self.tableView reloadRowsAtIndexPaths:array withRowAnimation:UITableViewRowAnimationNone];   // does not reload
[self.tableView reloadRowsAtIndexPaths:array withRowAnimation:UITableViewRowAnimationNone];   // does reload

Estou imaginando se alguém já encontrou um bug como esse e, em caso afirmativo, qual foi a caus