This is resolved per mikeash - setOpaque. It remains a mystery to me why this is necessary in the case of NSBorderlessWindowMask and not NSTitledWindowMask but I won't loose sleep over it. I'll leave the page here in case anyone follows the link.
When I make a 99% transparent window containing a matrix with a clear background using NSBorderlessWindowMask the window background is visible. If I use NSTitledWindowMask instead the window is clear as glass. I don't know what I need to do to get tranparent borderless windows. This test program demonstrates by generating windows - every other one is created either with NSTitledWindowMask or NSBorderlessWindowMask. It looks like this:

Archived Xcode project (1.4MB)
#import "MyObject.h"
@implementation MyObject
- (id)init
{
self = [ super init];
return self;
}
#define MG_COLUMNS (10)
#define MG_ICONWIDTH (48)
#define MG_ICONHEIGHT (48)
#define MG_BORDERWIDTH ( 2)
- (void)awakeFromNib
{
int i;
unsigned int styleMask;
NSString *title;
NSWindow *window;
for (i = 0; i < 10; i++) {
title = [[ NSString stringWithFormat:@"window %d", i] retain];
if (i % 2) {
window = [[ self createWindowWithStyleMask:NSTitledWindowMask] retain];
[window setTitle:title];
} else {
window = [[ self createWindowWithStyleMask:NSBorderlessWindowMask] retain];
}
[ window setAlphaValue:0.9999];
[ window setBackgroundColor:[[ NSColor redColor] retain]];
[ window orderFront:self];
}
}
- (NSWindow *)createWindowWithStyleMask:(unsigned int)styleMask
{
static NSPoint lastTopLeft = {-10000, -10000};
NSRect frameRect;
NSMatrix *matrix;
NSWindow *window;
frameRect.size.width = MG_COLUMNS*MG_ICONWIDTH;
frameRect.size.height = MG_ICONHEIGHT;
window = [[ NSWindow alloc] initWithContentRect:NSMakeRect(0, 0, frameRect.size.width+(2*MG_BORDERWIDTH), frameRect.size.height+(2*MG_BORDERWIDTH)) styleMask:styleMask backing:NSBackingStoreBuffered defer:YES];
[ window setMovableByWindowBackground:YES];
frameRect.origin.x = MG_BORDERWIDTH;
frameRect.origin.y = MG_BORDERWIDTH;
matrix = [[ NSMatrix alloc] retain];
[ matrix initWithFrame:frameRect mode:NSRadioModeMatrix cellClass:[ NSActionCell class] numberOfRows:1 numberOfColumns:MG_COLUMNS];
[ matrix setDrawsBackground:YES];
[ matrix setBackgroundColor:[[ NSColor clearColor] retain]];
[[ window contentView] addSubview:matrix];
if (lastTopLeft.x == -10000) {
[ window center];
lastTopLeft = [ window frame].origin;
}
lastTopLeft = [ window cascadeTopLeftFromPoint:lastTopLeft];
return window;
}
@end