Would it be legal to create similar incompatibilities if there is both a legal business justification (that particular solution can be implemented in X developer time and would cost us Y money which wins against a proper implementation) and an engineering justification (that particular solution would use X less bytes of disk/RAM and would run better on Y% of our customer's machines) for an implementation which heavily depends on undocumented internals of another product?