Agree, it is a combination of things. IMO the two that factor the most are hull shape & waterline length. The more slippery the hull shape the better. The longer the waterline length the faster the hull speed. If a single will comfortably push the boat at its cruising speed there is no reason to have two engines with all of the added costs of having a second beast in the bilge. Weight does not matter much. Once weight is moving it does not take much to keep it moving. A 300hp motor running only a little above idle to produce 50hp to move at a desired speed will not burn much more than a 50hp motor running WOT to produce that 50hp & same speed.
1200, maybe 1400rpm gave me 6kts in my 100hp 27' Albin. Only went to the fuel dock a few times a season & the boat was out every weekend. While friends in their go fast boats were in line at the fuel dock I would cruise sedately by, beverage in hand cause I did not have to worry about spilling it at my speed, & they might catch up to me a little before our agreed anchorage. Going slow has its benefits.