You skipped over this part:
The date value is a Media Center internal floating-point date/time representation, stored in Date fields, and output from various functions such as Now() and ConvertDate(). To pass a field of type Date to FormatDate(), use the raw (unformatted) field specification, such as "[Date Imported,0]".
You have everything else right, but you're passing the [Date] field in the wrong format, because you didn't include the ,0 on the end of the date field to get the raw data.
So you need:
formatdate([Date,0], d//MM//yyyy)
Several examples are given at the bottom of the FormatDate() wiki page, and they include the ,0 with the field name, although they use date fields other than just plain old [Date]
The [Date] field, unless told otherwise, outputs in a friendly format. There are a few circumstances in the expression language where you have to distinguish between formatted and raw data, and this is one of them. But a lot of people aren't aware of this sort of distinction.