Левая сторона квадрата у вас находится четко по центру экрана, так что текущий код выполняется корректно. Чтобы сам квадрат был по центру по оси X, нужно дополнительно сдвинуть его левее на половину его ширины. То есть код должен быть такой:
Apple рекомендует пользоваться Autolayout, а не фреймами, и там есть привязки к центральным осям: NSLayoutAttributeCenterX, NSLayoutAttributeCenterY, можно добавить и смещения для них. Притом Вы можете сделать это как в IB (storyboard или xib), так и в коде с помощью VFL (Visual Format Language).