If you only need compatibility back to 2005, then I guess you could call the following a "simplification".
DECLARE @pMonth INT
,@pYear INT
,@Date DATETIME
;
SELECT @pMonth = 11
,@pYear = 2013
;
SELECT FifthWeekDay = DATEADD(dd, CASE WHEN d.DoW > 1 THEN 7 ELSE 6-d.DoW END, f.FirstOfMonth-1)
FROM (SELECT DATEADD(mm,@pYear*12-22801+@pMonth,0)) f (FirstOfMonth)
CROSS APPLY (SELECT DATEDIFF(dd,-1,f.FirstOfMonth)%7) d (DoW)
;
--Jeff Moden
Change is inevitable... Change for the better is not.