You haven't indicated how this is failing for you...
While I'd re-write the first calculation to get rid of the If function, what you have should calculate correctly provided you click on storage options and make them unstored calculations. They will not update correctly when the system clock's date changes if they are stored calculation fields.
I'd rewrite the first to be:
Case(not IsEmpty (Date Received) ; "" ;
IsEmpty ( Shoot Date ) ; "" ;
Shoot Date<Get (CurrentDate)-11; "Over Due";
Shoot Date< Get (CurrentDate)-10 ; "Due"
) // Case
Thanks, That solved the problem I was having