Yes, the idea is that using S3 without a CDN is a obvious mistake and everyone that is paying for S3 in a production instance can afford to pay for S3 and a CDN for less money.
One possible workaround if you are somehow stuck in S3 without a CDN is setting s3 cdn url
to the bucket URL, so it becomes a noop.