que bueno que funcionó, ahora me queda una duda:
En el primer case, revisamos todas las que sean menores a 30 (aquí tal vez debería ser "<="), en el segundo case revisamos las que sean de 31 a 45 días, me queda la duda de que si en el primer case, no colocamos un "menor o igual", aquellas facturas que sean exactamente de 30 días, no sean consideradas.
En pocas palabras, debería ser algo como:
Código SQL
[-]
case when datediff(F.FechaFactura, CurDate()) <=30 then F.Monto else 0 end as dias30,
case when datediff(F.FechaFactura, Curdate()) between 31 and 45 then F.Monto else 0 end as dias45,