Question: One of my weaknesses as a PM is not being able to delegate and manage work assigned to others. What are ways you can tackle this? Granted I have high expectations of others, but sometimes they just don't meet the basic requirements.

Example:
I asked someone to do a task for me, and 2 hours before the deadline they present it to me clearly showing no effort was put into it. I had to scramble and re-do it myself. In this scenario, how do you deal with this person? Is there a better way of asking them to do it? How can I enforce it so they do it better next time?

Answer: 
A few suggestions:

Don't delegate & disappear until the deadline. Check in with them once or twice, just informally to ask how it's going, do they need any clarification from you, are they having any problems.

Be sure everyone is clear on what the priority of the delegated task is, especially if the people you've delegated to have other usual tasks, and possibly other people that are setting their priorities or depending on them.

And when things do go wrong, don't think "enforce". Think "ask." Ask them about it (after you've calmed down from having had to scramble to do it yourself, and after putting any thoughts of what *you* think happened firmly out of your mind), in a non-judgmental, non-authoritarian, curious way. 

For example, in the situation you describe, I might say something like:

*So, I appreciate that you turned the thing in on time, and that it had (something else I can remotely find to praise about it), but I was surprised that it didn't include (specific things that you had expected it to include). Was I not clear about that, or ...?* 

Note that I'm leading with the assumption that the fault might have been mine. I will do this even if I am 99.999% sure that it was not, partly because I have learned that communications problems usually have fault on both sides, but mostly because it is the least accusatory framing I can provide, so it is least likely to provoke a defensive, self-justifying response, and most likely to elicit an open, productive response.

Hopefully, the response identifies what the other person thought the problem was, and the conversation can then proceed collaboratively to figure out how we can avoid a similar problem next time. Sometimes I will offer a solution (eg, "would it be helpful if I checked in with you halfway thru?") and sometimes (usually not the first time) I will assert a solution I want to try (eg, "OK, well, next time I would like to see your design/prelim draft so we can make sure we're on the same page earlier").

Communications problems are SO common. It is SO easy to think that everything made it out of your head and into your words when really only half of it did -- and this is true on both sides. It's often helpful to point that out (eg, "Oh I see, I said X and what I meant was X+Z, but I wasn't explicit about the Z part so you assumed I wanted X+Y") as it can become an area for continuously working towards improvement. 

It's hard to move from "I asked you to do this thing and I ended up redoing it myself, dammit" to "OK, well *that* didn't work out how I expected. What do you think happened?" And it can take a few hours or a day or two to get there, especially at first. But I have found it well worth it: both in terms of fostering a collaborative, productive team, and in terms of lowering my stress level. :) 

Good luck!
You are only looking at the individual as a possible root cause of the mediocre performance. This is not unusual, unfortunately, but it is also not very effective. You need to look at the entire system: processes--including the supporting processes such as QA (@VickiLaidler's suggestion) and risk--tooling; knowledge--both tacit and explicit--and your talent. 

And you need to monitor performance over time. The human talent is the least reliable; there is quite a variance in all of our performance. Even the best pilot will bounce one in every now and again. So you need to measure and monitor your talent's performance over time to find his/her modal performance level. 

In most cases, the human is not what's broken. There are other drivers that disable human performance no matter who (s)he is. You need to take a more sophisticated approach on this very complex topic of performance than what you are seeking here.