In a GridControl, you can just set these properties in FormLoad. You do not necessarily have to set them dynamically in PrepareViewStyleInfo. But, if you want to set them dynmically, you probably should try QueryCellInfo instead of PrepareViewStyleInfo. I was able to put a derived MonthCalenderAdv in a cell using this code and have it show up.
Here is the sample.
this.gridControl1[2,2].CellType = "Control";
this.gridControl1[2,2].Control = this.monthCalendarAdv1;
But if you want to use more than 1 or 2 of these, you should derive your own cell control. Take a look at this sample, 2.0.5.1\Grid\Samples\CellTypes\CalendarCells. It uses a MonthCalendar, but I think you should be able to do something similar with a derived class.