Faits : A. A.a. Le 20 novembre 2012, la société de droit luxembourgeois B._ Sàrl (ci-après: B._), en tant que maître de l'ouvrage, d'une part, et la société de droit suisse A._ SA (ci-après: A._), en qualité d'entrepreneur général, d'autre part, ont signé un contrat d'entreprise générale, pour un prix forfaitaire de 5'085'000 fr., en vue de la rénovation d'un immeuble locatif sis à Bienne. Une année plus tôt, le maître de l'ouvrage avait conclu un contrat d'architecte, relativement au même projet, avec la société C._ SA, dont le dénommé D._, est le président du conseil d'administration. L'art. 2 du contrat d'entreprise générale listait, selon un ordre de priorité déterminé, une série de documents formant partie intégrante de cet accord; il déclarait applicables, dans la même mesure, les dispositions du Code suisse des obligations (CO). A l'art. 16 dudit contrat, une clause arbitrale prévoyait ce qui suit: "Tous les différends qui pourraient survenir au sujet du présent contrat, y compris concernant l'interprétation ou l'application du présent contrat, seront exclusivement réglés par un arbitre unique. Les parties désignent D._ en tant qu'unique arbitre, qui décidera selon le principe ex aequo et bono, et déclarent qu'ils (sic) reconnaîtront son jugement comme final et obligatoire, sans possibilité de recours à un autre arbitre ou à un tribunal. " A.b. Par lettre recommandée de son mandataire, envoyée le 3 avril 2014 à A._, B._, invoquant l'art. 366 CO, s'est départie du contrat d'entreprise générale avec effet immédiat. Un litige entre les parties, quant à l'exécution de leurs obligations respectives, en est résulté. B. B.a. Le 9 avril 2014, B._, se fondant sur la clause arbitrale insérée dans le contrat d'entreprise générale, a adressé une requête d'arbitrage à D._, l'arbitre unique ad hoc (ci-après: l'arbitre) désigné dans ladite clause, lequel l'a communiquée à A._. En date du 15 avril 2014, l'arbitre a notifié aux parties une "ordonnance procédurale n° 1". Selon cette ordonnance, d'ailleurs modifiable en tout temps par l'arbitre, Genève serait le siège et le français la langue de l'arbitrage. La procédure serait, en principe, écrite, forme sous laquelle les témoins déposeraient, l'arbitre conservant toutefois la possibilité de tenir une audience pour permettre à la partie adverse d'interroger les témoins. Les faits et moyens de preuve nouveaux ne seraient pas admis après le dépôt de la première écriture de la partie les invoquant. Enfin, l'autre partie devrait se substituer à la partie défaillante pour payer la part de l'avance de frais incombant à celle-ci. A._, qui n'a pas versé sa part de l'avance de frais, s'est plainte, à plusieurs reprises, après avoir reçu le mémoire de demande le 6 mai 2014, de prétendus vices affectant l'ordonnance procédurale n° 1. Le 16 mai 2014, elle a requis formellement l'arbitre de se récuser, après avoir saisi le Tribunal de première instance du canton de Genève, mis en oeuvre comme juge d'appui, d'une requête similaire. Par sentence incidente du 2 juin 2014, l'arbitre a rejeté la demande de récusation. Le Tribunal de première instance a déclaré irrecevable la requête similaire par jugement du 23 septembre 2014. En bref, il a retenu que la requérante était déjà consciente, lorsqu'elle avait signé le contrat d'entreprise générale incluant la clause arbitrale précitée, du rôle que le futur arbitre allait jouer dans l'exécution du chantier, du fait que cet architecte n'avait pas de connaissances juridiques et des liens que celui-ci entretenait avec les parties et diverses sociétés proches de ces dernières. Pour le surplus, le juge d'appui a considéré que la requérante avait par trop tardé à agir à réception de l'ordonnance procédurale n° 1, si bien qu'elle était forclose à invoquer le contenu de cet acte comme motif de récusation. Cet incident réglé, la procédure arbitrale a continué suivant des modalités qui ne seront évoquées, plus loin, que dans la mesure où elles revêtent de l'importance eu égard aux griefs articulés dans le recours soumis à la Cour de céans. A la demande de A._, l'arbitre a tenu, le 31 octobre 2014, une audience destinée à l'audition des témoins de B._ ainsi qu'aux plaidoiries des parties. Au terme de cette audience, il a gardé la cause à juger. Dans une lettre du 13 novembre 2014, A._ a repris plusieurs griefs qu'elle avait déjà formulés antérieurement et sollicité la rectification du procès-verbal de la susdite audience. B.b. Par sentence finale du 14 novembre 2014, l'arbitre a condamné A._ à payer à B._ la somme de 2'459'324 fr. 08, avec intérêts à 5% l'an dès le 9 avril 2014, de même que la somme de 70'000 fr. à titre de dépens. Les frais de la procédure arbitrale, arrêtés à 70'000 fr. également, ont été mis à la charge de A._, les parties étant déboutées de toutes autres conclusions. C. Le 17 décembre 2014, A._ (ci-après: la recourante) a formé un recours en matière civile, assorti d'une requête d'effet suspensif. Se plaignant, tout d'abord, de la manière dont le Tribunal arbitral a été composé (art. 190 al. 2 let. a LDIP), elle reproche, en outre, à l'arbitre d'avoir statué au-delà des demandes dont il était saisi (art. 190 al. 2 let. c LDIP), d'avoir violé son droit d'être entendue (art. 190 al. 2 let. d LDIP) et d'avoir rendu une sentence incompatible avec l'ordre public (art. 190 al. 2 let. e LDIP). La recourante demande au Tribunal fédéral d'annuler la sentence finale du 14 novembre 2014. L'arbitre, qui a produit son dossier, a indiqué, dans une lettre du 21 janvier 2015, qu'il estime infondés les griefs articulés par la recourante. Dans sa réponse du 9 février 2015, B._ (ci-après: l'intimée) a conclu au rejet du recours dans la mesure de sa recevabilité. La recourante a confirmé ses conclusions en tête de sa réplique du 25 février 2015, tandis que l'intimée a renoncé à déposer une duplique, tout en soulignant, dans une lettre du 12 mars 2015, qu'elle conteste entièrement les observations formulées dans la réplique.