Edit:
We were typing at the same time, I posted this some milliseconds after your post above
/Edit
OK, I found the culprit of the confusion:
When reading the CJ temperature, both bank1 and bank2 readings are sent by the card (16bits each).
But the dmm uses some kind of weighted average of the two readings, weighted toward the bank CJ you requested.
All our examples so far (of hex to °C) are null and void, because they were all influenced by what the other bank CJ reading was at the time.
By setting both CJ readings to the same value, I can see the scaling used by the dmm:
0x0000 = -7.109 °C
0x17e4 = 23.180 °C
0x7d00 = 124.289 °C
This scale is still odd, similar to the DS75 datasheet, but different
But that's my understanding at the moment.
You can't arrange your card to return exactly the same temperature hex for both CJ readings,....
...but my 0x17e4 reading of 23.180 is very close to what you got 23.0156 (your card must have been temperature equalised).
So, I think we are all good and we can assume the card applies the CJ calibration.