IP Precedence and DSCP Values

Since DSCP values are inside the packet with the other IP values, why do they get altered by many ISP and ISP routers? What is the big deal, why cant they just keep these values as it gets sent from one router to another? I just did a test using colasoft packet player, and with dscp values set to high priority, and sure enough by the time the packets get to my server on the internet, the DSCP values have been reset. whats the logic in doing that?