I'm writing a custom package for labeled matrices using TikZ. I noticed an inconsistency in TikZ. This is best illustrated with the following MWE:
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}[baseline=(m.west)]
\matrix (m) [draw=white!80!black,
left delimiter=[,right delimiter={]}, matrix of math nodes]
{ 1 & 1 \\ };
\end{tikzpicture}
\begin{tikzpicture}[baseline=(m.west)]
\matrix (m) [draw=white!80!black,
left delimiter=[,right delimiter={]}, matrix of math nodes]
{ 1 & 1 \\ 2 & 2 \\ };
\end{tikzpicture}
\begin{tikzpicture}[baseline=(m.west)]
\matrix (m) [draw=white!80!black,
left delimiter=[,right delimiter={]}, matrix of math nodes]
{ 1 & 1 \\ 2 & 2 \\ 3 & 3 \\ };
\end{tikzpicture}
\end{document}
Surprisingly (to me at least), this is rendered as follows:

Clearly, the braces for the single-line matrix are aligned differently from the multi-line matrix. I'd expect the braces to be slightly smaller than the grey box in all cases.
Why is this and, more importantly, how do I remedy this?
UPDATE 1: Following @percusse's comment below, the remedy seems to be to add outer sep=0pt to the options of each matrix. Now I run into the next problem: I want to control the amount of space between rows. When adding row sep=0.1em to each matrix (in addition to outer sep=0pt), this is, again surprisingly, rendered as:


outer sep=0. Also you don't need brace decoration for the brackets ;) Andblack!20gives you the same color. – percusse May 03 '13 at 09:59decoration=braceoptions. It will still work. – percusse May 03 '13 at 10:11row sep=0.1emintroduce the same unexpected shift again for the second (two-by-two) matrix? – yori May 03 '13 at 10:27outer sep=0perhapsouter ysep=0is enough – Alain Matthes May 03 '13 at 10:28