Yeah. I understood Maya.Cmds has a lot of caveats.
Oh, and i found a huge bug on maya.cmds . Well, i found several ones, including that crossProduct or dotProduct (don't remember which one) in MEL casts to INT any value passed if you pass the value itself, not a variable..., funny thing. The workaround,set a variable, pass it instead. LOL).
The big bug is this one: XFORM command works on component space instead of world Space, ignoring completely worldSpace flag. worldSpace gets ignored several times. In this case, if you use xform on any component or group of components, it ignores the flag.And it is surprising, could be easier this way, but what i had to do is generate an inverse matrix (using normal python, not numPy (i have my reasons)) from the last step of the extrude position, and apply it to the new transformation matrix, so it converts the tranfsormation matrix (world space) itself into a relative transf. matrix, just for this step in the curve. So it contains JUST the transformation between the step before extruding, and the new position.
Sucks...
But now it works. I can see the elements following the path of the curve. So xform works. Doesn't collapse things, but i can't give it worlspace transformations... which sucks anyway...
Oh! And something else. As i am using the normal vector given by pointOnCurve to construct the Frenet matrix (NBTP) from the bezier curve, it swaps sometimes, so it makes huge twists on the tube i generate. This is related to the also known f** Gimbal Lock for animators. Those twists are related to the fact that it is constructed using euler maths, not quaternions. This sucks too, bezier allways gives those problems. A workaround for this is to use the up vector of the world, projected into the plane generated by the tangent vector, which is always correct.This way, the normal is always perpendicular to tangent, and is allways pointing to the same direction or near it. This removes those twists and works perfectly. :-)
Thanks everybody, hope this is useful for somebody!