UDP doesn't drop packets - its tries to deliver the data as best it can. What UDP doesn't do is actively hunt down errors - if a packet is lost due to garbled transmission there is no automatic recovery mechanism. Rather it is up to to the applications to take corrective action.
TCP does guarantee that the data will be received but it does this because is it a connection orientated protocol that is the real difference. In UDP each message exist in isolation., in TCP a connection is established first - the first computer asks the second "are you ready to talk?" and the second responds "OK, let's talk". The "conversation" then persists until one or the other computer states that it is finished with. The error correction is simply a natural part of managing that conversation.
Considered another way, UDP is like sending a postcard through the mail - the message you want to send and who is to receive it is all sent as one unit. If you don't receive a reply back in response you don't know what has happened - it could never have been received, they may simply have not replied to it, or the reply got lost on the way back. After a while you may decide that you are not going to receive a reply and send another card asking "Did you get my first card? Here is what I wrote..."
TCP is more like a phone call - a "connection" between the two parties is established first. You pick up the phone, dial the number you want and wait for someone to answer. When they do you can begin communicating with each other and what you say is going to be heard by the other party. When the conversation is over you both hang up. TCP uses an essentially similar mechanism.
Where the metaphor falls down is in the speed of the communication. In contrast to the mail vs a phone call UDP is generally faster. Both use the same underlying medium so individual messages travel at the same speed. However, TCP requires additional messages to be sent to set up the connection in the first instance, monitor it as it progresses and recover any parts of the "conversation" that went missing. This slows it down compared to UDP.