Well, the way my school does it is that we have our final year exams at the end of IB1 which is in a couple weeks for me, and they will base the predicted grades on your results in those exams and your overall scores throughout the year. Will you be having final exams? If yes, then start studying asap and make sure to excel in them. If not, I would look at your IAs and improve those. The teachers should allow you to write more IAs than they have assigned you to do - therefore if your IAs aren´t as good try writing new ones and make sure to learn from the mistakes you´ve made on your previous ones. Honestly, you should be aiming for 7s in most of your IAs. You can do as many as you want to, therefore if you work hard you´ll get to the top grades eventually. And I think that your teachers should appreciate your sudden effort you´d be making.
Then it´s just about talking to the teachers seperately - do they have any projects going on that you could help them with? Any charities they organize? Any extracurricular activities? If yes, participate in them and help the teachers with something. Make them remember you in a good way. Kiss their asses. Be their friend (almost). And then when it´s time for them to make predicted grades talk to them, show them how much you want to get into St Andrews and ask them if they could improve the grade. Promise you´ll do your best in your final year and will redeem yourself.
And if you have a big problem with History or Maths (be it the subject or the teacher), try to up your strongest subjects to 7s. I.e. if you´re really good at English and Spanish, try to push them up that one grade, the difference between a 6 and a 7 is usually very small. Might be less work than improving that 4 from History and will get you those extra points you need.
That´s all I can think of, really. Good luck!