use this one
DECLARE @mydate DATETIME, @starDate datetime, @EndDate datetime
SELECT @mydate = GETDATE()
set @starDate = (SELECT CONVERT(VARCHAR(25),DATEADD(dd,-(DAY(@mydate)-1),@mydate),101))
set @EndDate =(SELECT CONVERT(VARCHAR(25),DATEADD(dd,-(DAY(DATEADD(mm,1,@mydate))-1),DATEADD(mm,1,@mydate)),101))
SELECT
PaymentTracker1.*
, convert(varchar(20),DATEADD(m,N,StartDate),110) AS DueDate
,(Numbers.N * MonthlyPay) AS DueAmount
FROM
PaymentTracker1
INNER JOIN Numbers on DATEDIFF(m,PaymentTracker1.StartDate,PaymentTracker1.EndDate) >= Numbers.N
where StartDate>=@starDate and StartDate<@EndDate
ORDER BY
PaymentTracker1.Name
,Numbers.N