Obtenha o DateTime de Agora
GETDATE() -- 2011-09-15 13:45:00.923
Calcule a diferença em meses de '1900-01-01'
DATEDIFF(m, 0, GETDATE()) -- 1340
Adicione a diferença para '1900-01-01' mais um mês extra
DATEADD(m, DATEDIFF(m, 0, GETDATE())+1, 0) -- 2011-10-01 00:00:00.000
Remover um segundo
DATEADD(s, -1, DATEADD(m, DATEDIFF(m, 0, GETDATE())+1, 0)) -- 2011-09-30 23:59:59.000