It is possible to modify the subdivision rules to create piecewise smooth surfaces containing infinitely sharp features such as creases and corners. As a special case, surfaces can be made to interpolate their boundaries by tagging their boundary edges as sharp.
However, we’ve recognized that real world surfaces never really have infinitely sharp edges, especially when viewed sufficiently close. To this end, we’ve added the notion of semi-sharp creases, i.e. rounded creases of controllable sharpness. These allow you to create features that are more akin to fillets and blends. As you tag edges and edge chains as creases, you also supply a sharpness value that ranges from 0-10, with sharpness values >=10 treated as infinitely sharp.
It should be noted that infinitely sharp creases are really tangent discontinuities in the surface, implying that the geometric normals are also discontinuous there. Therefore, displacing along the normal will likely tear apart the surface along the crease. If you really want to displace a surface at a crease, it may be better to make the crease semi-sharp.
In blender 1.0 would have been essentially equivalent of Pixars creasing value of 10, except blenders implementation was simpler and didn’t split normals, instead either you would use auto smoothing or split edge normals via other means such as the edge-split modifier.
If you set your creasing to a value less than 1.0 does it still split the normals? If so then you have successfully produced an example of a bug, otherwise it seems to be correct behavior to me.