One way to help you get better at this is to track your original estimate (shoot in the dark if you have to at first) then track how long it actually took you. You might even want to estimate how "hard" it was to do and how hard you thought it was going to be originally say on a scale of 1 to 10.
Do this for a while and you might start seeing a pattern and even start to understand how you good / bad (relative term) your estimates are.
As time goes on use these to help you rethink your estimates. For example, the last few times I have estimated a 5 day task that was of medium difficulty ( say a 5 out of 10) I have been off by an average of 5 days.
With that I am going to estimate 10 days on this one and see what happens. :)
Continually redo this exercise and you will start to get a better handle on this.
Oh and yes, as already mentioned estimation is hard and there are alot of resources out there but nothing like practice or a really good mentor. :)