difference output differentially expressed genes by Cuffdiff, Deseq2, edgreR

I did a Rnaseq analysis for detect deferentially expressed genes, by using three tools, Cuffdiff, Deseq2, edgreR, but the output of them are different, among a list of 20 genes, only 1 gene is common, and Deseq2, edgreR detect only this one gene as DEG, but Cuffidd detect 8 gene as DEG. i want to know are there any mistake here? and why this is occurred.

Classical RNAseq software situation;

Check this post
and this one
and this paper
and this paper too