After a bit of work, I've answered both these questions myself. Limiting hours displayed can be accomplished by setting HeightSpec = HeightSpec.BusinessHoursNoScroll
Passing in data to the calendar object involved a bit of work, but the eventual solution was to pass arguments into the constructor for the 'Dpc' class that is used in the examples, and storing those as protected members of that class.
Thanks for posting your solution.
There is also another option which will allow you to show 24 hours but starting at the specified hour:
DayBeginsHour = 6
This will move the day start from 00:00 to 06:00.
Loading the events should be quite straightforward. You should be able to use any class that is IEnumerable in the Events property. Unless you have special needs, it's enough to load it inside Dpc class, e.g. in the OnFinish() overload. See also here (demonstrated for the Month control): http://mvc.daypilot.org/monthly-calendar-and-sql-server-tutorial/