Hi Martyn,
In the Calendar control (http://www.daypilot.org/calendar.html) you need to use Columns property:
DayPilotCalendar.Columns.Add(name, id);
You can also define custom date for each column:
Column c = new Column(name, id);
c.Date = DateTime.Today;
DayPilotCalendar.Columns.Add(c);
And in combination with HeaderLevel, you can define a column hierarchy (an example from http://www.daypilot.org/demo/Calendar/DaysResourcesView.aspx):
    private void defineColumns()
    {
        DayPilotCalendar1.Columns.Clear();
        DateTime first = Week.FirstDayOfWeek(DayPilotCalendar1.StartDate);
        for (int i = 0; i < 7; i++)
        {
            DateTime day = first.AddDays(i);
            Column c = new Column(day.ToShortDateString(), day.ToString("s"));
            c.Date = day;
            DayPilotCalendar1.Columns.Add(c);
            Column c1 = new Column("A", "A");
            c1.Date = day;
            c.Children.Add(c1);
            Column c2 = new Column("B", "B");
            c2.Date = day;
            c.Children.Add(c2);
            if (day.Date == DateTime.Today)
            {
                Column c3 = new Column("C", "C");
                c3.Date = day;
                c.Children.Add(c3);
            }
        }
    }
See also: