While most commands deal with dates in a culture-specific format, care must be taken when passing dates (as strings) to parameters that cast to DateTime.
Casting to DateTime does not account for a cultural bias. For example, in the UK the format dd/MM/yyyy is often used. Casting this format to DateTime will switch the format to MM/dd/yyyy (as used in the US):
$string = "11/10/2000" # 11th October 2000 [DateTime]$string # 10th November 2000
If a function is created accepting a DateTime as a parameter, the result may not be as expected:
function Test-DateTime { param( [DateTime]$Date ) $Date } Test-DateTime -Date "11/10/2000"
It is possible to work around this problem using the Get-Date command to ensure the culture specific conversion is correctly handled:
Test-DateTime -Date (Get-Date "11/10/2000")