public int verschilInDagen(DatumGregCal d) {  
		 int MILLIS_IN_DAY = 1000 * 60 * 60 * 24; 
		 DatumGregCal startDate;
		 DatumGregCal endDate;
		 
		 if (this.kleinerDan(d)) {
			startDate = d;
			endDate = this;
		 }else {
			startDate = this;
			endDate = d;
		 }
		 
		 long endInstant = endDate.getCalender().getTimeInMillis();
		 int presumedDays = (int) ((endInstant - startDate.getCalender().getTimeInMillis()) / MILLIS_IN_DAY);
		 Calendar cursor = (Calendar) startDate.getCalender().clone();
		 cursor.add(Calendar.DAY_OF_YEAR, presumedDays);
		 long instant = cursor.getTimeInMillis();
		 if (instant == endInstant)  
			  return presumedDays;  
		 final int step = instant < endInstant ? 1 : -1;  
		 do {  
			 cursor.add(Calendar.DAY_OF_MONTH, step);  
			 presumedDays += step;  
			} while (cursor.getTimeInMillis() != endInstant);  
		 return presumedDays;
	}