To verify, you give your Chinese mobile number to 12306 as 1831123456 and 12306 sends an SMS to that number with a code. You then send that code back to 12306 in a reply SMS.
12306 expects a reply SMS with the code coming from mobile number 1831123456. But on those two-number cards, the reply number doesn't show as 1831123456. As I recall, it shows as +861831123456, and that's enough of a difference to make verification fail on 12306. (Or maybe the problem was, you can't pick the reply number when you send an SMS, and it always showed the HK number. This was a while ago.)
I went through this again and again at the time: the two-number card just doesn't work.