Oil settles at a 3-week low, falls under $28