Have a look at our Booking and Reservations module.
It has flexible booking/reservation options:
1. Flexible \"exclude days\” rules: Similar to ‘blackout’ days with airlines, prevent bookings/reservations for certain dates
2. Option to set billable periods by “day” or “hours”: makes this extension suitable for date-time-date and time-based products, e.g. hotel room/consulting attendance/rental products
3. Set available times for bookings and reservations, e.g. reservations can be made only from 8:00 AM - 6:00 PM
4. Specify date and time period of product availability, making this extension useful for products that are available for limited time periods such as a particular play or movie
4. Allow multiple reservations for the same time based on available quantity of the bookable product: for example, a car wash with 3 boxes could allow 3 reservations in the same time slot
See the product description and try the demo on the product page: http://www.ecommerce.aheadworks.com/magento-extensions/booking-and-reservations.html