DigitalOcean does it's billing based on a per-minute basis based on their hourly rates. We have already implemented a feature in our backend code to allow users to "expire" free servers and are working on adding that to the dashboard UI and this option should be available this weekend.
Each Droplet is billed per hour up to its monthly cap.
Do I have to pay the cost of the server every time I create a new one?
No—you only need to pay for 1 hour of usage. For example, spinning up a new 512MB server just to test something for a couple of minutes will only cost you $0.0074