Hi Cristiano,
Thank you for the uploaded model, it helped to clarify the problem.
The range box is not always a tight fitting box. It's always axis aligned with the document axes system you're working in. The intent of the range box is to provide an easily calculated box that contains the object in question. This box can then be used as part of a pre-sorting algorithm to find or reject objects that cross a particular boundary. It's not intended to always tightly enclose an object. A reasonably tight fitting bounding box is computed for the part aligned with the part's coordinate system and cached in the part.
An occurrence bounding box takes this part box (not the part geometry), transforms it into the assembly space, and then fits a new box aligned with the assembly coordinates. If there is a non-orthogonal rotation between part and assembly space, the assembly box will be larger than the box in part space to fit around it. This is an optimization in order to avoid re-computing the part geometry bound in arbitrary assembly contexts.
The following picture demonstrates range boxes for the different occurrences of the same part model “10007.ipt”.

Returning the optimal (aligned to principle geometry axis) or necessarily tight fitting bounds, is not a requirement for this API, but to return a reasonable bounding box that is only guaranteed to completely contain the geometry. If you want an assembly’s tight fitting box you may calculate min and max points from existing surface facets. This will always give tight bounding box in assembly and part context irrespective of shape. Method directly works with the surface bodies and does not depend on work geometry visibility, sketches, etc.
Philippe Leefsma published the detailed blog article with the sample code that demonstrates this approach. HIs code uses the client graphics to draw a range box that tightly encloses the part component.
http://adndevblog.typepad.com/manufacturing/2012/06/creating-accurate-rangebox-for-component.html
Here is the "correct" range box for the component “10007.ipt:6” in your model:

Having “correct” range boxes for every component you may combine them to get the overall assembly range box.
Not easy but should work.
Hope this helps.
Cheers,
Vladimir Ananyev
Developer Technical Services
Autodesk Developer Network