I have used OD AlumaHyde II from Brownells on plastic furniture with great success. Fairly cheap and easy to apply, just give it a full couple week to fully cure. Years later my projects still look great!
I have used Krylon Fusion for plastic to match up the color on some 922r compliant grips and forend with an original East German stock. That came out great as well though not quite as hard as the Alumahyde.
I have used Krylon ultra flat camo colors (less than $4.00/can at Walmart) to make some AR and shotgun beaters look more tacticool. It looks good too. Typically chips off the metal pretty easily but I kinda like the look of honest wear. The nice things about going the rattle can route is that I know I am not creating a work of art so the pattern ends up looking a bit more random and organic. Scratches or imperfections are easily touched up and the stuff will hose off with a can of brake cleaner if I really hate it or want to change it later.
Whatever product you choose;
1) READ AND FOLLOW THE INSTRUCTIONS!. It always amazes me how many people just can't understand that maybe the manufacturer knows how best to use their own product.
2) PREPARATION! Take the time to properly prepare the surface. This may include coarse and fine sanding. It WILL include proper degreasing and dust removal. A durable good looking finish starts with the surface preparation. Take the time to do it right and under the right weather conditions.
BTW- If the can says "shake" for two minutes, time yourself! I always see a lot of people shake a can of paint like a can of deodorant and then are pissed off because the paint didn't apply evenly.
ETA- Duracoat is the superior product if you are willing to make the extra effort and expense. I use it on metal surfaces that I want to really look good and last.