The supplied value must be a constant or a variable. You cannot specify a function name as a parameter value. (from MSDN Executing Stored Procedures).
You need to do something like this:
declare @EffectiveStartDateText varchar(30)
set @EffectiveStartDateText = cast(@EffectiveStartDate as varchar)
declare @EffectiveEndDateText varchar(30)
set @EffectiveEndDateText = cast(@EffectiveEndDate as varchar)
RAISERROR (
'SPName: InsertUpdateLiquidityDateRule: Start Date: %s cannot be greater than End Date %s',
11,
1,
@EffectiveStartDateText,
@EffectiveEndDateText);