Here's another slightly different solution
Find the start of month of pricing date, find the start of month of todays date, then if the difference is one month -> flag is true
CASE WHEN DATEDIFF(MONTH,
DATEADD(MONTH,DATEDIFF(MONTH,0,C.PricingDate),0), /* BOMonth for Pricing date */
DATEADD(MONTH,DATEDIFF(MONTH,0,GETDATE()),0) /* BOMonth for today */
) = 1
THEN 1 ELSE 0 END as 'PreviousMonthFlag'
FROM (VALUES(CAST('20180101' as date)), ('20180201'), ('20180228'), ('20180301'), ('20180401')) c(PricingDate)