How does blockchain.info api works?
The issue was with how the transactions are sorted. The balance was being calculated with 9c8f1b918e6a6a2 being sorted before 46d529d722d1 (which is incorrect) despite them being ordered correctly in the json. Regardless it should be fixed now.