ОК, если вы действительно хотите присоединить команду к событию, вы можете использовать шаблон, подобный этому: http://petebarber.blogspot.com/2011/06/getting-wpf-sizechanged-events-at-start.html
В основном вы определяете (в отдельном файле) присоединенное свойство, которое перехватываетдо события.Так что в вашем случае это будет событие CalendarOpened объекта DatePicker.Таким образом, присоединенное свойство будет называться CalendarOpenedCommand, и вы затем будете использовать это свойство в фактическом DatePicker следующим образом:
<DatePicker mvvm:CalendarOpenedCommand="{Binding MyCalendarOpenedCommand}" ...
Однако я лично считаю, что это излишне, если это единственное место, где вы будете использовать эту функцию,Это могло бы расстроить некоторых пуристов MVVM, но в этом случае я бы просто поместил однострочный обработчик событий для CalendarOpened в коде, который затем мог бы вызвать метод (или даже команду, если вы предпочитаете) в модели представления, чтобы уведомить его ооткрытие календаря.Затем он может делать свое дело и обновлять связанные свойства для DisplayDateStart и DisplayDateEnd (как я предлагал в комментариях выше) соответственно.