I suspect that is a copy/paste/edit error in the documentation; looking in reflector, it is not implemented as a circular buffer; for example push is (after the resize code) basically:
this._array[this._size++] = obj;
peek is:
return this._array[this._size - 1];
and pop is:
object value = this._array[--this._size];
this._array[this._size] = null;
return value;
Note it doesn't use any kind of offset/wrap-around - so it is not actually using a circular buffer. Your instinct looks right, but the documentation looks wrong.