I don't think that you are screwed for medical school. Your gpa is low but it isn't game over. I think the best thing that you can do to raise your gpa is to continue being proactive, you are seeking help which is excellent, but you need to determine why your studying methods aren't working the way you want (i.e. Are you reading chapters and doing problems, are you just highlighting and speed reading etc...).
Try not to prioritize your classes as much would be the next step, it's obvious from your post that it is hurting your cumulative gpa by staying up the night before, so rather than doing that study for both types of classes. Take a couple of hours and sit in the library and focus on the topics that are really troubling you and then read and think about those you find easier (Doing practice problems and homework as needed). Lastly, try not to become so frustrated you are skipping class, it will come back to bite you.
Everyone studies in different ways, it may take a while for you to figure things out but the game isn't over for you just yet, keep seeking help and working hard and you will see dividends. You should aim to raise your gpa to above a 3.5 if you want to be competitive, your not far off so don't give up.
EDIT: Another deciding factor will be how you do on the MCAT. Think about that as you are planning out your future and good luck!