It is a known issue that white balancing of tiff and jpeg files brings colour crossover. Each and every day I see photos where a neutral mid-tone object was used to establish white balance, and as a result all colours in shadows and highlights are screwed. White balancing is essentially a linear operation of multiplication, and as such it is better to use linear colour space for it. One needs to convert image to 16 bits, and then to an appropriate linear colour space (same matrix, but with gamma = 1); and after that to do the balancing. Same way as it is done in RAW.