Prueba esto:
SELECT
od.Sku,
od.mf_item_number,
od.Qty,
od.Price,
s.SupplierId,
s.SupplierName,
s.DropShipFees,
si.Price as cost
FROM
OrderDetails od
INNER JOIN Supplier s on s.SupplierId = od.Mfr_ID
INNER JOIN Group_Master gm on gm.Sku = od.Sku
INNER JOIN Supplier_Item si on si.SKU = od.Sku and si.SupplierId = s.SupplierID
WHERE
od.invoiceid = '339740'
Esto devolverá varias filas que son idénticas excepto por el cost
columna. Mire los diferentes valores de costo que se devuelven y descubra qué está causando los diferentes valores. Luego pregúntele a alguien qué valor de costo quiere y agregue los criterios a la consulta que seleccionará ese costo.