In this non-destructive workflow, your object is still considered by Blender to be the original little cube: the Simple Deform just "happens" to it, and can be still tweaked, changed, removed. The circle is not really there, is just "computed" on the go from the starting cube every time.
This saves memory and allows "customizability", but requires you to think of the object as a little cube with some other thing happening to it. It becomes very clear if you enter in Edit Mode (Tab) and realize that you only have the original cube's vertices only.
If you want to set the transformation in stone, and have your actual circle with all its vertices, you can hit "Apply" in the modifier options. After doing that, you can use CtrlAltShiftC > "Set Origin: To Center of Mass" to correctly place the pivot to the object's center.
P.S. there are alternative ways to create a square-section circle: e.g. using the Spin tool or the Spin modifier, or using a Bezier Circle with a square Bevel object, or this one (I think it's the easiest) that starts with a torus:
- Add a Torus
- In the "new object" parameters (F6) change "Minor Segments" to 8
- In Edit Mode (Tab) select the unwanted edge loops (CtrlShiftMouse Select)
- X > "Dissolve Edges"
All these methods have the pivot in the right place