The problem is undoutedly in 3D Studio Max, not any exporters. Other mirror problems certainly are because for some reason 3D Studio Max does not render accurately until Reset XForm is applied. Because the problems are fundamental to the model, such problems are also common to ALL exporting. You said yourself you tried two separate .x exporters; it being Microsoft's file format one has to assume it is pretty completely tested as file formats/exporting go. For reference have you tried exporting to 3ds and then viewing that in other apps (Blitz3D, Ultimate Unwrap, etc?)
Note that mirroring problems aren't limited to Blitz; since I first started using 3D Studio Max, years before I ever even heard of Blitz3D, I've been using Reset XForm to correct that problem. I really wonder why discreet has never addressed that problem. It's not just a problem for exporting, it can screw things up within 3D Studio Max too (for example, try doing a boolean involving a mirrored object.) The trouble mirroring can cause for booleans is why I was first advised to use Reset XForm; somewhat ironically booleans are problematic in so many other ways too that I still avoid them with a vengeance.
As for hating to kludge around everything you may want to rethink doing 3D modeling. As I pointed out, when you use 3D Studio Max (or pretty much any other 3D art tool) a lot you get used to doing cleanup steps as you work. Using Reset XForm after every mirror for example becomes a habit, something you don't even think about and just do. Other common cleanup steps you may want to get into the habit of doing regularly to ensure the integrity of your model, some specific to 3D Studio Max and some common to all 3D art tools, include STL Check, welding vertices to close cracks, collapsing the modifier stack, test smoothing the model (eg. with MeshSmooth) to see problems in the mesh, and turning edges to even out topology. If this sounds annoying, well, it is but you just have to get used to it. Software is flaky and there's not a whole lot you can do about it. It's just like how you should save and backup your work regularly in case the computer craps out on you.
****************
Er, so the point of that lecture was that it is impossible to write a bullet-proof exporter because mirroring problems are due to 3D Studio Max, not the exporter.
Note that mirroring problems aren't limited to Blitz; since I first started using 3D Studio Max, years before I ever even heard of Blitz3D, I've been using Reset XForm to correct that problem. I really wonder why discreet has never addressed that problem. It's not just a problem for exporting, it can screw things up within 3D Studio Max too (for example, try doing a boolean involving a mirrored object.) The trouble mirroring can cause for booleans is why I was first advised to use Reset XForm; somewhat ironically booleans are problematic in so many other ways too that I still avoid them with a vengeance.
As for hating to kludge around everything you may want to rethink doing 3D modeling. As I pointed out, when you use 3D Studio Max (or pretty much any other 3D art tool) a lot you get used to doing cleanup steps as you work. Using Reset XForm after every mirror for example becomes a habit, something you don't even think about and just do. Other common cleanup steps you may want to get into the habit of doing regularly to ensure the integrity of your model, some specific to 3D Studio Max and some common to all 3D art tools, include STL Check, welding vertices to close cracks, collapsing the modifier stack, test smoothing the model (eg. with MeshSmooth) to see problems in the mesh, and turning edges to even out topology. If this sounds annoying, well, it is but you just have to get used to it. Software is flaky and there's not a whole lot you can do about it. It's just like how you should save and backup your work regularly in case the computer craps out on you.
****************
Er, so the point of that lecture was that it is impossible to write a bullet-proof exporter because mirroring problems are due to 3D Studio Max, not the exporter.