diff --git a/date_elements.inc b/date_elements.inc
index 3368593..2bf08a3 100644
--- a/date_elements.inc
+++ b/date_elements.inc
@@ -402,17 +402,17 @@ function date_combo_element_process($element, &$form_state, $form) {
   // Create label for error messages that make sense in multiple values
   // and when the title field is left blank.
   if ($field['cardinality'] <> 1 && empty($field['settings']['repeat'])) {
-    $element[$from_field]['#date_title'] = t('@field_name Start date value #@delta', array('@field_name' => $instance['label'], '@delta' => $delta + 1));
+    $element[$from_field]['#date_title'] = t('@field_name Start date value #@delta', array('@field_name' => $element['#title'], '@delta' => $delta + 1));
     if (!empty($field['settings']['todate'])) {
-      $element[$to_field]['#date_title'] = t('@field_name End date value #@delta', array('@field_name' => $instance['label'], '@delta' => $delta + 1));
+      $element[$to_field]['#date_title'] = t('@field_name End date value #@delta', array('@field_name' => $element['#title'], '@delta' => $delta + 1));
     }
   }
   elseif (!empty($field['settings']['todate'])) {
-    $element[$from_field]['#date_title'] = t('@field_name Start date', array('@field_name' => $instance['label']));
-    $element[$to_field]['#date_title'] = t('@field_name End date', array('@field_name' => $instance['label']));
+    $element[$from_field]['#date_title'] = t('@field_name Start date', array('@field_name' => $element['#title']));
+    $element[$to_field]['#date_title'] = t('@field_name End date', array('@field_name' => $element['#title']));
   }
   else {
-    $element[$from_field]['#date_title'] = t('@field_name', array('@field_name' => $instance['label']));
+    $element[$from_field]['#date_title'] = $element['#title'];
   }
 
   // Make changes if instance is set to be rendered as a regular field.
