Keep in mind that queries are executed by the database, not by Django - you can’t pass a Django function to the database for it to be executed there, you need to pass the output of that function.
Something like this would work:
.annotate(duration=Cast(now, DateField()) - F(‘date_1’), …)
(See the yellow warning box in the coalesce function docs for the example I used to draw this from.)