We have developed a maximum likelihood framework called CellPhy for inferring phylogenetic trees from single-cell DNA sequencing (scDNA-seq) data, that can be directly applied to somatic cells and clones. CellPhy is based on a finite-site Markov nucleotide substitution model with 10 diploid states, akin to those typically used in statistical phylogenetics. It includes a dedicated error function for single cells that explicitly incorporates amplification/sequencing error and allelic dropout (ADO). Moreover, it can explicitly consider the uncertainty of the variant calling process by using genotype likelihoods as input. We implemented CellPhy in a widely used open-source phylogenetic inference package (RAxML-NG) that provides statistical confidence measurements on the estimated tree and scales particularly well on large phylogenies with hundreds or even thousands of cells. To benchmark CellPhy, we carried out 19,400 coalescent simulations of cell samples from exponentially-growing tumors for which the true phylogeny was known. We evolved single-cell diploid DNA genotypes along the simulated genealogies under different scenarios including infinite- and finite-sites nucleotide mutation models, trinucleotide mutational signatures, sequencing and amplification errors, allele dropouts, and doublet cells. Our simulations suggest that CellPhy is robust to amplification/sequencing errors and to ADO and that it outperforms the state-of-the-art methods under realistic scDNA-seq scenarios both in terms of accuracy and speed. In addition, we sequenced 24 single-cell whole genomes from a colorectal cancer, and together with three published scDNA-seq data sets, analyzed them to illustrate how CellPhy can provide more reliable biological insights than competing methods. CellPhy is freely available at https://github.com/amkozlov/cellphy.