I'm trying to center some xy-pic code but using \centering or center environments fails to do so. Anybody know why and how I can solve it?

Here the code I try to center:

Code:

\begin{figure}
\centering
\xymatrix@-1pc@R=10pt@C=0.4pt{
& & & & & *+[F-:<5pt>]{Q_r} \ar@{-}[dl] \ar@{-}[dr] \\
& & & & *+[F]{S_1} \ar@{-}[dl] & \ldots & *+[F]{S_n} \ar@{-}[dr] \\
& & & *+[F-:<5pt>]{Q_1} \ar@{-}[dl] \ar@{-}[dr] & & \ldots & &
*+[F-:<5pt>]{Q_n} \ar@{-}[dl] \ar@{-}[dr]\\
& & *+[F]{S_{n+1}} \ar@{-}[dl] & \ldots & *+[F]{S_{n+m}} \ar@{-}[dr] & & & & &\\
& *+[F-:<10pt>]{Q_{n+1}} \ar@{-}[dl] \ar@{-}[dr] & & \ldots & &
*+[F-:<10pt>]{Q_{n+m}} \ar@{-}[dl] \ar@{-}[dr] & & & \\
& & & & & & &
}
\caption{A DPN domain graph.}
\label{fig:dpn_cluster}
\end{figure}