O seguinte funcionará o que você considerar o primeiro dia da semana (domingo, segunda-feira etc), apenas certifique-se de usar
SET DATEFIRST
se você quiser mudar do padrão. SET DATEFIRST 1
fará o primeiro dia da semana segunda-feira. SELECT DATEADD(DAY, 1 - DATEPART(WEEKDAY, GETDATE()), CAST(GETDATE() AS DATE)) [WeekStart],
DATEADD(DAY, 7 - DATEPART(WEEKDAY, GETDATE()), CAST(GETDATE() AS DATE)) [WeekEnd]
EDITAR
Acabei de reler seu pedido e acho que você pode estar atrás de algo diferente do que dei acima. Se você quiser o dia da semana do primeiro e do último do mês, isso fará o truque:
SELECT DATENAME(WEEKDAY, DATEADD(DAY, 1 - DATEPART(DAY, GETDATE()), GETDATE())) [FirstDayOfMonth],
DATENAME(WEEKDAY, DATEADD(DAY, - DATEPART(DAY, DATEADD(MONTH, 1, GETDATE())), DATEADD(MONTH, 1, GETDATE()))) [LastDayOfMonth]