Always Dispose System.Windows.Forms.DateTimePicker controls.
System.Windows.Forms.DateTimePicker registers for notification from the static SystemEvents.UserPreferenceChanged event. It does this so that changes to the way a user would like to see date and time fields formated are reflected in the control as soon as the change has occured. As this event is static, it is a GC root, so if you (as an object) register yourself for this event, the reference that the delegate chain of the event holds will keep you alive forever. Obviously, de-registering for the event will remove this reference, which is what occurs in the Dispose method of the DateTimePicker.
An undiposed DateTimePicker will live for as long as the app domain does.