Yes, that sounds like a normal weight for a 3 month old, though there is quite the range for normal growth rates in pups.
If he looks thin to you, you can feed a bit more. 2 cups a day for a growing puppy doesn't sound like enough food. I'd increase it to 2 1/2 to 3 cups a day, divided into two or three meals.
Can you post pictures? Better to have a pup on the lean side than too fat - but pics will help.