Adding the "th" is the tricky part. You could get it all except for that like this:
="Dinner - " & TEXT(TODAY(),"dddd d mmmm yyyy")
but adding the "st", "rd", "th" makes the formula much more complex, and might require VBA, depending on the answer to the following question.
Note that if you use a native Excel formula, it will ALWAYS show the current date. So, if you open the file today, it will show today's date. But if you open the file tomorrow, it will show tomorrow's date.
Is that what you want, or do you want the current date to be "frozen in time"? If so, that will require VBA, if you want it done automatically.