We consider packet scheduling for the downlink in a wireless network, where each packet's service preferences are captured by a utility function that depends on the packet's delay. The goal is to schedule packet transmissions to maximize the total utility. We examine a simple gradient-based scheduling algorithm, the U̇R-rule, which is a type of generalized cμ-rule (Gcμ) that takes into account both a user's channel condition and derived utility. We study the performance of this scheduling rule for a draining problem. We formulate a "large system" fluid model for this draining problem where the number of packets increases while the packet-size decreases to zero, and give a complete characterization of the behavior of the U̇R scheduling rule in this limiting regime. We then give an optimal control formulation for finding the optimal scheduling policy for the fluid draining model. Using Pontryagin's minimum principle, we show that, when the user rates are chosen from a TDM-type of capacity region, the U̇R rule is in fact optimal in many cases. Finally, we consider non-TDM capacity regions and show that here the U̇R rule is optimal only in special cases.