I’m attempting to draw this image on screen:

This is the code:
CALayer* dullLayer = [CALayer layer];
{
dullLayer.frame = CGRectMake(0,0,BUTTON_SIZE,BUTTON_SIZE);
dullLayer.position = CGPointFromPoint2D( btnCenter );
dullLayer.opacity = topQuadrant ? 1.0 : 0.5;
[wheelLayer addSublayer: dullLayer];
}
UIImage* test = [UIImage imageNamed: @"OuterButton_Dull.png"];
dullLayer.contents = (id) [test CGImage];
This is what I get:

What gives? Why are the edges so jagged? Contrast this with the Roman numeral images that have been composited to screen in exactly the same way.
I have tried
dullLayer.edgeAntialiasingMask = 0x0f; // binary 1111
to no avail.
EDIT: http://lists.apple.com/archives/cocoa-dev/2008/Feb/msg02070.html
If the result image that you posted is the same size as it appears on the screen then you are simply using too large an image. A PNG image is not a vector image, so scaling it down will always give some aliasing; the further you scale down the worse it gets. Antialiasing will have limited effect in such cases.
The fact that you don’t see it for the numeral images is partly because it doesn’t contain any fine, high contrast, lines like the other image does and partly perhaps because you are using smaller images for them.
If you have the original image as a vector image, try scaling that down to the right size before converting it to PNG. If you need a higher resolution version somewhere else in your app, consider creating multiple PNGs, each at different resolutions.
If you don’t have the original image as a vector image, you should try finding a replacement. There are a couple of good sources for free clip art files on the web, such as http://www.openclipart.org/ or http://www.clker.com/.