collectionViewをスクロールするとcellのsubviewが別のcellに移動して困っております。

カメラロールの写真を取得し、collectionviewへ順に配置。
配置されたcellをタップするとtwitterのようにsubviewをcellへ追加するという処理を書いています。

#pragma mark - UICollectionViewDataSource

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {

    PHAsset *asset = self.assets[indexPath.item];

    CameraRollCell *cell = (CameraRollCell *)[collectionView dequeueReusableCellWithReuseIdentifier:cameraRollCellID forIndexPath:indexPath];

    [self.imageManager requestImageForAsset:asset
                                 targetSize:self.cellSize
                                contentMode:PHImageContentModeDefault
                                    options:nil
                              resultHandler:^(UIImage *result, NSDictionary *info) {
                                  if (result) {
                                      cell.backgroundView = [[UIImageView alloc] initWithImage:result];
                                  }
                              }];

    return cell;
}

- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
    PHAsset *asset = self.assets[indexPath.item];

    CameraRollCell *cell = (CameraRollCell *)[collectionView cellForItemAtIndexPath:indexPath];
    [cell selectPhoto];
}

そう思い、このような処理を書きました。selectPhotoを呼ぶことで、カスタムセル内にある、自らにsubviewを追加するという処理が走ります。

追加するとこのようになります。
正常時

追加までは無事完了するのですが、collectionviewをスクロールすると、imageViewはそのままに、その追加されたsubViewが別のcellに移動してしまいます。
異常時

どのようにすればこの不具合は起こらなくなるでしょうか?
ご回答、よろしくお願い致します。