IMHO the decision if to cluster or not should be entirely business driven. Do you really need the potential higher availability and are you willing to pay the additional cost. How does increased availability of SQL Server measure up compared to application failure (IMHO the most significant source of service downtime).
To my experience, the added complexity of clustering at the SQL Server level can in practice lead to less uptime than a simple straight forward single node installation (especially in a vm on a vm cluster). Today, in a computing centre you already have many other means to guard you from hardware failure or at least allow rather quick recovery. (High available, redundant storage in a SAN, VM clusters etc.)