When you’re setting the mpls experiment bit on the PE router for traffic coming from CE router you must use imposition for QoS treatment. You cannot use topmost because the packet is IP packet. If you’re on a P router you can set or match on the topmost label for the swap function. If you’re on the PE router receiving traffic from the P router then you can also set and match on the topmost label.
Whether a customers sets the DSCP/TOS or you set an mpls exp bit inbound on a PE router you have to match on the mpls experiment bits as the packet leaves the PE router going to the P router because the packet is an mpls packet not an IP packet. If a packet is marked by a customer with a DSCP or TOS value, that value will be honored/mapped to an mpls experiment value. See the chart below for mappings honored:-