You could do it with a bunch of INDEX-MATCH formulas and pre-calculating base tax per bracket:
=(income-INDEX(bracket_min,match(income,bracket_min,1)))*
INDEX(bracket_tax,match(income,bracket_min,1))+
INDEX(bracket_base_tax,match(income,bracket_min,1))