Just found another issue related to DSCP rules.
It seems that the rule will match TOS value instead of DSCP value.
For example, I originally set CS1 (DSCP value 8, equal to TOS value 32) in the rule, right now I need to set to CS4 instead to match the packet with DSCP value 8 (TOS value 32)