It's certainly not impossible to make that improvement in two weeks, but you'll really need to zero in on what's dragging your score down and make some swift corrections. Don't try to fix everything, but look for common mistakes/difficulties and work to develop a technique that will help you to avoid these problems.
For instance, to avoid silly mistakes, it's important to make good use of your scratch paper. Write down what you're looking for in concrete terms (e.g. Total distance/Total time = ). Write down key constraints (x = positive integer, y = prime < 20). Organize your work clearly on the paper, using charts and tables as needed, and placing all key values in one spot.
Also, make sure to exercise strict discipline on timing. Don't let yourself run more than about 2 minutes behind at any point. If a problem is going to drag on, drop it immediately.
It is certainly tough to take the test when you haven't hit the score you want at home, but hopefully you can make a few adjustments and see improvement on your next practice tests (you should probably take about 2 more). If you haven't hit 650 by test day, you don't need to cancel--most schools are only concerned about your highest score, so if you retake for a later admissions deadline, a low June score won't drag you down. However, you shouldn't "aim high" on test day. Work on perfecting your test-taking form over the next two weeks and then try to recreate your best home performance on the real test. You'll be tempted to push harder and "force" certain problems, but that's the path to a timeout and a frustratingly low score. Keep a cool head and you have a shot at the score you want.