UICollectionView 사용시 Custom Layout 을 사용하면 scrollToItem 이 동작을 안할때가 있다. 그럴때는 setContentOffset 을 이용해서 이동시키면 된다.
double x = (collectionView.bounds.size.width * destCellIndex) + collectionView.frame.origin.x;
[collectionView setContentOffset:CGPointMake(x, 0) animated:YES];