Faits : A. Par jugement du 17 septembre 2015, le Tribunal de police de l'arrondissement de Lausanne a reconnu X._ coupable d'escroquerie. Il lui a infligé une peine privative de liberté de sept mois, avec sursis et délai d'épreuve de deux ans, et a renoncé à révoquer le sursis qui lui avait été accordé par l'Untersuchungsrichteramt Freiburg le 23 septembre 2010. Il a renvoyé B.A._ et A.A._ à agir devant le juge civil et a mis les frais de la cause, par 2'575 fr., à la charge de X._. B. Statuant sur l'appel formé par X._, la Cour d'appel pénale du Tribunal cantonal vaudois l'a partiellement admis par jugement du 15 janvier 2016. Elle a libéré X._ de l'infraction d'escroquerie, a constaté qu'il s'était rendu coupable d'abus de confiance et l'a condamné à une peine pécuniaire de 180 jours-amende, le montant du jour-amende étant fixé à 10 fr., avec sursis et délai d'épreuve de deux ans. Ce jugement repose sur les faits suivants. B.a. Le 31 août 2009, X._ est devenu administrateur de la société C._ SA, laquelle avait notamment pour but l'exploitation d'une entreprise générale de construction de bâtiments, ainsi que toutes activités relatives à la restauration, à l'hôtellerie et au divertissement, l'achat et la rénovation d'exploitations, l'achat, la vente et la gérance de tous immeubles. B.b. Au mois de juillet 2011, C._ SA a débuté un projet de construction de deux villas à la rue dddd à D._, dont une seule avait trouvé acheteur. Les deux maisons étant jumelées, il était impératif que la maçonnerie des maisons se fasse en parallèle. C._ SA a dès lors décidé de construire les deux maisons simultanément et de vendre la seconde " clé en main " une fois terminée. En cours de construction, faute de liquidités pour payer les maîtres d'état travaillant sur ce projet, C._ SA s'est vue contrainte de trouver des acheteurs prêts à acquérir la maison en l'état. X._ a ainsi mandaté un courtier pour trouver des acheteurs pour la seconde villa, lequel lui a présenté les époux A.A._ et B.A._. B.c. C'est ainsi que le 6 juin 2012, C._ SA, représentée par X._, et les époux A._ ont signé devant notaire un contrat de vente ayant pour objet l'immeuble précité. Cette vente a eu lieu pour un prix global et forfaitaire de 325'000 fr., somme que les acquéreurs s'engageaient à verser dans les 20 jours suivant la signature de l'acte sur le compte du notaire ouvert auprès de la Banque E._. Selon le contrat, le prix de la vente comprenait l'ensemble des travaux réalisés au jour de la signature de l'acte de vente. La société C._ SA s'engageait donc à régler toutes factures ouvertes relatives aux travaux effectués au jour de la signature de l'acte de vente. X._ avait en outre attesté par courrier du 4 juin 2012 adressé à la Banque E._ que l'ensemble des entreprises à qui C._ SA avait adjugé les travaux déjà effectués seraient payées le jour de la vente de la villa. Le 7 juin 2012, C._ SA, représentée par X._, a encore signé avec les époux A._ un contrat d'entreprise générale à prix forfaitaire pour les travaux de construction futurs de la villa, à hauteur de 400'000 fr., comprenant la somme de 325'000 fr. prévue dans le contrat de vente précité. Un décompte annexé au contrat d'entreprise générale faisait état des créances ouvertes relatives aux travaux déjà effectués que la société s'était engagée à régler lors de la signature du contrat de vente du 6 juin 2012, soit un montant de 90'308 fr.40. Le 22 juin 2012, A.A._ et B.A._ ont versé le montant du prix de la vente, soit 325'000 fr., sur le compte du notaire. Avec ce montant, le notaire a, comme stipulé dans le contrat de vente, remboursé le crédit hypothécaire s'élevant à 200'000 fr., ainsi que divers frais, puis a versé le solde de 97'187 fr. 20 sur le compte de C._ SA en date du 9 juillet 2012. B.d. Le 5 juillet 2012, X._ a démissionné de sa fonction d'administrateur de la société C._ SA. F._ est devenu administrateur unique de la société avec inscription au registre du commerce en date du 12 juillet 2012, l'ensemble du capital-actions de C._ SA ayant par ailleurs été acheté par la société G._ SA de F._ pour un montant de 10'000 francs. Malgré les engagements pris, X._ n'a pas utilisé le montant de 97'187 fr. 20 reçu pour payer les dettes en suspens concernant la construction de la villa du couple ainsi qu'une partie des travaux futurs, ni n'a donné de directives dans ce sens à F._, avec qui il n'avait d'ailleurs parlé d'aucun dossier. L'argent versé par le couple est ainsi parti dans le fonds de roulement de la société, qui a été déclarée en faillite le 10 juillet 2014 avec effet au même jour. Ainsi, A.A._ et B.A._ ont dû payer deux fois les factures en suspens pour un montant de 90'308 fr. 40 afin d'éviter l'inscription d'hypothèques légales, mais aussi les factures relatives aux travaux qui n'avaient pas encore été exécutés, correspondant à un montant de 6'878 fr. 80 (97'187 fr. 20 - 90'308 fr. 40). Ils ont déposé plainte pénale le 10 décembre 2012. C. X._ forme un recours en matière pénale au Tribunal fédéral contre l'arrêt du 15 janvier 2016. Il conclut, avec suite de frais et dépens, au prononcé de son acquittement et à l'allocation d'une indemnité à hauteur de 6'586 fr. 80 pour la procédure cantonale, aucun frais n'étant mis à sa charge pour le surplus. Subsidiairement, il conclut à l'annulation de l'arrêt attaqué et au renvoi de la cause à l'autorité cantonale pour nouvelle décision. D. Par ordonnance du 8 juin 2016, la Cour de droit pénal du Tribunal fédéral a rejeté la requête d'assistance judiciaire formée par X._ dans le cadre de son recours en matière pénale, la condition d'indigence n'étant pas réalisée. E. Invités à se déterminer sur le recours, la cour cantonale et le ministère public y ont renoncé. A.A._ et B.A._ se sont limités à conclure à la confirmation du jugement attaqué, sans autre développement.