Simple function to get the first day of the week. It seems to perform nicly also.
ALTER
FUNCTION [dbo].[F_Get_Sunday] (@MidWeekDate DateTime)
RETURNS
DateTime AS
BEGIN
DECLARE @WeekCommence DateTime
SET @WeekCommence = DateAdd(d, -((@@DATEFIRST + DatePart(dw, @MidWeekDate) -1) % 7), @MidWeekDate)
RETURN CAST(FLOOR( CAST(@WeekCommence as FLOAT)) AS DATETIME)
END