The problem is that the rule gets evaluated before replacement. To prevent evaluation you can use HoldPattern:
HoldPattern
Dt[x] /. HoldPattern[Dt[h_]] :> h