Database name on Wordpress can't include hyphen, but our host has mandatory prefix-hyphen-name format
Found how to resolve this one, but bit concerned that this fudge might break something further on down the line.

The CiviCRM installer page is driven by the file: wp-content/plugins/civicrm/civicrm/install/index.php.

This runs various checks and the db name check is on line 464 showing a call to CRM_Core_DAO to function requireValidDBName.

This function is in php file: wp-content/plugins/civicrm/civicrm/CRM/Core/DAO.php.  Editing the preg_match string to include hyphens after the underscore allows these in the file name.

public static function requireValidDBName($database) {
  $matches = array();
  preg_match(
    "/^[0-9]*[a-zA-Z_-]+[a-zA-Z0-9_-]*$/",
    $database,
    $matches
  );
  if (empty($matches)) {
    return FALSE;
  }
  return TRUE;
}