Not the answer to your question, but a solution with KOMA-Script.

Option 1:
\documentclass{scrbook}
\setkomafont{dictumtext}{\itshape\small}
\setkomafont{dictumauthor}{\normalfont}
\renewcommand*\dictumwidth{.75\linewidth}
\renewcommand*\dictumauthorformat[1]{--- #1}
\renewcommand*\dictumrule{}
\begin{document}
\thispagestyle{empty}
\vspace*{\fill}
\dictum[Lewis Carroll, \emph{Alice in Wonderland}]{Begin at the beginning, the King said gravely, ``and go on till you come to the end: then stop.''}
\end{document}
Option 2:
\documentclass{book}
\usepackage{scrextend}
\setkomafont{dictumtext}{\itshape\small}
\setkomafont{dictumauthor}{\normalfont}
\renewcommand*\dictumwidth{.75\linewidth}
\renewcommand*\dictumauthorformat[1]{--- #1}
\renewcommand*\dictumrule{}
\begin{document}
\thispagestyle{empty}
\vspace*{\fill}
\dictum[Lewis Carroll, \emph{Alice in Wonderland}]{Begin at the beginning, the King said gravely, ``and go on till you come to the end: then stop.''}
\end{document}
Option 3:
\documentclass{book}
\makeatletter
\newcommand{\dictum}[2][]{\par%
\begingroup
\raggeddictum\parbox{\dictumwidth}{%
{\@dictumfont{\raggeddictumtext #2\strut\par}%
\def\@tempa{#1}\ifx\@tempa\@empty\else%
{\raggeddictumtext\dictumrule}%
\raggeddictumauthor\@dictumauthorfont\dictumauthorformat{#1}%
\strut\par%
\fi%
}%
}\par%
\endgroup
}
\newcommand*{\dictumrule}{}
\newcommand*{\dictumwidth}{.75\textwidth}
\newcommand*{\raggeddictum}{\raggedleft}
\newcommand*{\dictumauthorformat}[1]{--- #1}
\newcommand*{\raggeddictumtext}{\raggedright}
\newcommand*{\raggeddictumauthor}{\raggedleft}
\newcommand*{\@dictumfont}{\itshape\small}
\newcommand*{\@dictumauthorfont}{\normalfont}
\makeatother
\begin{document}
\thispagestyle{empty}
\vspace*{\fill}
\dictum[Lewis Carroll, \emph{Alice in Wonderland}]{Begin at the beginning, the King said gravely, ``and go on till you come to the end: then stop.''}
\end{document}