It's not usually some sort of Voo-doo. :-)
Each PowerShell cmdlet chooses its own DC (usually within the same AD site as the machine on which the script is executed). If you want consistency, your scripts should make their own selection of a DC and store the choice in a variable. The variable should be used as the value of the "-Server" parameter on each cmdlet. This is applicable to all but single DC forests.
If you were to do something like below, you may find that the DisplayName appears not to have changed!
Get-ADUser -Identity samAccountName |
Select-Object DisplayName
Get-ADUser -Identity samAccountName |
Set-ADuser -DisplayName somethingDifferent |
Get-ADUser |
Select-Object DisplayName
Intra-site replication usually sets things right within a short period of time. Inter-site replication schedules may cause a longer delay. But if there are problems with the AD, well . . . ?