So, after huge mess, I came to end with a solution that in the second elseif condition, I was not converting date properly as in first if condition:
Else if @startDate IS NOT NULL
Begin
set @strCondition = ' FO.Rf_Date >=' + @startDate
End