You can try Rockauto, depending on the prices you find there, take the part number and do an internet search to see if you can find a better deal. If you don't mind a used one, and likely mismatched color (unless you are willing to paint it), you can probably score one for a much lower price from a junk yard, or car-part.com
Or try the dealer or GMPartsDirect.com but, like @Blckshdw said, a used one is likely your best option. Might even be able to find one of the same colour. Just be sure to get the correct one for your truck. SWB are different than the LWB for that part.