I am still very much a noobie, but it looks to me like sideLengths is getting doubled in size and then 2*amount added, because '+=' is used, and then sideLengths is added again.
/ Expands box by amount on each side (in both +ve and -ve directions)
/ <param name="amount"></param>
public void Expand(Vector3 amount)
transform.Position -= Vector3.Transform(amount, transform.Orientation);
sideLengths += sideLengths + 2.0f * amount;