Your method only takes two dates, so you need to get the proper two dates to supply to that method.
Assuming they intersect at all:
To do that all you need to do is take the two start dates and compare them, then take the two end dates and compare them. The last start date and the earliest end date will govern your range of intersection.
NSDate* correctStartDate;
NSComparisonResult result = [startdate1 compare:startdate2];
if(result == NSOrderedDescending)
correctStartDate = startdate1;
else
correctStartDate = startdate2;
NSDate* correctEndDate;
NSComparisonResult result = [enddate1 compare:enddate2];
if(result == NSOrderedAscending)
correctEndDate = enddate1;
else
correctEndDate = enddate2;
Then get the number of days between those using your method.
To check if they intersect just compare the start date and the end date. If the start is after the end then they do not intersect.