Lo que pasa es que #cabecera tiene el mismo ancho de su contenedor
#capaMadre 1024px pero le estás agregando un padding-right en 350px. Los padding aumentan el ancho de esa capa, ten en cuenta y presente eso. Si quieres definir el ancho usa las matematicas.
ANCHO CAPA MADRE - PADDING CAPA HIJA = ANCHO CAPA HIJA
Asi el width de #contenedor según lo que pones sería
674px.
Pero veo que estás estructurando una página, y si quieres que ese contenedor te vaya hacia la derecha o izquierda tienes que indicarlo con la propiedad float.
ejemplo:
Código CSS:
Ver original#capaMadre{ width:1024px; display:block; clear:both; }
#contenedor{ float:right; padding-right; 350px; height: 400px; }
Cuando haces esto no hay necesidad de indicar el ancho de las capas hijas. Sin embargo, hay que usar un normalizador de floats para que esto no tenga problemas en algunos navegadores.
No sé que tan avanzado estés en CSS pero si necesitas más ayuda sobre floats y diagramación, acá dentro del foro hay un sub-foro dedicado a todo esto.
Saludos!