DAX code
DSO (Days Sales Outstanding) =
VAR EndingReceivables = [Overdue Amount] + CALCULATE(SUM('Invoices'[Amount]), 'Invoices'[Status] <> "Paid", 'Invoices'[DueDate] >= TODAY())
VAR PeriodDays = DATEDIFF(MIN('Date'[Date]), MAX('Date'[Date]), DAY) + 1
RETURN
DIVIDE(EndingReceivables, [Total Sales]) * PeriodDays