Just to make sure everything is correctly understood:
This is not a restriction of kicad but a restriction of the file format. WRL (or VRML) is a mesh file format that is focused on generating nice looking renders. One reason for using mesh format is that it uses much less computation power for rendering. (As the triangles that make up the faces are already defined in the file format and do not need to be first calculated from a different format.)
However a mesh is just an approximation of mechanical properties. If you define a hole in mesh then it does not come with properties like diameter, depth of cut, position, … but is simply an extruded polygon cut away from the rest of your body. One can try and recalculate the original dimensions but there simply is no guaranteed unique way to do it.
Step is different here. It stores the true mechanical parameters for every feature as it is meant as the exchange format between different mechanical engineering programs including the ones used by the manufacturers. Meaning a hole in step really has the parameters position, diameter, depth, …
Because the focus of step is not in rendering but engineering it simply has no way of including rendering specific material parameters for it. (There is no technical reason for not including it. It simply was not seen as important by the people who defined that file format.)
TlDr: Use wrl for making pretty pictures that you send your sales guy. Use step to send your pcb to the mechanical engineer tasked with integrating your board into a larger mechanical system.