Update
The version 1.2 of mdframed has new possibilities for setting the frame title. Based of your request you can simple use the option frametitlerule=true and frametitlebackgroundcolor=gray!20.
The current version is available at github.
\documentclass{article}
\usepackage[framemethod=TikZ]{mdframed}
\newenvironment{Frame}[1][]{%
\begin{mdframed}[%
frametitle={#1},
skipabove=\baselineskip plus 2pt minus 1pt,
skipbelow=\baselineskip plus 2pt minus 1pt,
linewidth=0.5pt,
frametitlerule=true,
frametitlebackgroundcolor=gray!30
]%
}{%
\end{mdframed}
}
\begin{document}
Text
\begin{Frame}[with Title]
Text
\end{Frame}
Text
\begin{Frame}% no Title
Text
\end{Frame}
Text
\end{document}

By using tikz to modify the header here one suggestion.
You have to modify the command \mdframetitleenv to influence the output. The package itself controls whether the frame title is empty or not.
\documentclass{article}
\usepackage[framemethod=TikZ]{mdframed}
\makeatletter
%ORIGINAL
%\providecommand*\mdframedtitleenv[1]{%
% \@afterindentfalse
% {\parindent \z@
% \setlength{\parfillskip}{\z@ plus 1fil}%
% \mdraggedtitle\nobreak\mdf@frametitlefont#1\relax%
% \par}%
% \@afterheading}
\tikzstyle{mybox} = [draw=black, %
fill=gray!20,%
line width=\mdf@middlelinewidth@length,
rectangle,
inner sep=0pt,
inner ysep=0.333em,
minimum height=1cm,
text width = \linewidth
+\mdf@innerleftmargin@length
+\mdf@innerrightmargin@length
+\mdf@linewidth@length,
align=left,
]
\renewcommand*{\mdframedtitleenv}[1]{%
\vspace*{\dimexpr-\mdf@innertopmargin@length-\mdf@linewidth@length\relax}%
\makebox[0pt][l]{%
\hspace*{\dimexpr-\mdf@innerleftmargin@length-\mdf@linewidth@length\relax}%
\begin{tikzpicture}[remember picture]
\node [mybox]{\hspace*{\mdf@innerrightmargin@length}%
\parbox{\linewidth}{\mdf@frametitlefont#1\relax}};%
\end{tikzpicture}%
}%
\par
\@afterheading
}%
\newenvironment{Frame}[1][]{%
\begin{mdframed}[%
frametitle={#1},
skipabove=\baselineskip plus 2pt minus 1pt,
skipbelow=\baselineskip plus 2pt minus 1pt,
linewidth=0.5pt,
]%
}{%
\end{mdframed}
}
\begin{document}
Text
\begin{Frame}[with Title]
Text
\end{Frame}
Text
\begin{Frame}[with Title with Title with Title with Title with Title with Title with Title with Title with Title with Title with Title with Title with Title with Title with Title with Title]
Text
\end{Frame}
Text
\begin{Frame}% no Title
Text
\end{Frame}
Text
\end{document}
needspacebefor but it doesn’t seem to work with2\baselineskiponly with fix values – Tobi Oct 22 '11 at 15:37