perhaps at the beginning it has a naive point, but now it's not so "soft"
Now it's an insult like "hijo****" or "cabr**", meaning the other person is egoistic, evil, malicious.
Examples:
"No seas capullo y devuélveme las llaves de mi coche"
"No seas capullo, dime lo que sabes"
"No seas capullo, necesito que me hagas ese favor"
In all those sentences you can change "capullo" for another *-word and will also work.
The only appropiate use of "capullo" in the original meaning are things like:
"No seas capullo, tu novia te está engañando"
"No seas capullo, nadie da nada gratis"
you're calling him naive, but also idiot or silly.
Saludos