You don't really need to make them float in this case, hence you don't need the figure environment. Just start your document from the images
\vspace*{-\topskip}%
\noindent%
\includegraphics[width=3cm,valign=t]{example-image-a}%
\hfill%
\includegraphics[width=3cm,valign=t]{example-image-b}
Additionally, the first line removes \topskip latex adds as the first thing on a page whilst \noindent cancels indentation.
Also, \includegraphics does not have a key left. Positioning in LaTeX is achieved by adding necessary space before/after/between images, even if they are inside figure. Conveniently, \hfill, equivalent of \hspace{\fill} adds a necessary stretch to spread both images both sides.
The full code:
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\vspace*{-\topskip}%
\noindent%
\includegraphics[width=3cm]{example-image-a}%
\hfill
\includegraphics[width=3cm]{example-image-b}
\end{document}
EDIT.
In case each of the images have a different size, you might need to add the top alignment by adding valign=t (available with the package adjustbox)

\documentclass{article}
\usepackage{graphicx}
\usepackage[export]{adjustbox} % <--- adds valign=t
\usepackage{showframe}
\renewcommand{\ShowFrameLinethickness}{0.2pt}
\renewcommand{\ShowFrameColor}{\color{red}}
\begin{document}
\vspace*{-\topskip}%
\noindent%
\includegraphics[width=3cm,valign=t]{example-image-a}%
\hfill%
\includegraphics[width=3cm,valign=t]{example-image-16x9}
\end{document}