TH2 option TEXT not working with font 43

Indeed what you get is normal. When you specify the precision 3 the texte size should be specify in pixel. You need to do something like:

{
   TCanvas *C = new TCanvas("C","C",800,800);
   auto frame = gPad->DrawFrame(-4.,0.,4.,350);
   frame->GetXaxis()->SetLabelFont(43);
   frame->GetXaxis()->SetLabelSize(30);
}