--- uc_flatrate.module	2011-03-18 02:59:42.000000000 -0500
+++ uc_flatrate.module.new	2011-03-18 20:20:18.000000000 -0500
@@ -229,13 +229,16 @@ function uc_flatrate_quote($products, $d
     $rate = $method->base_rate;
 
     foreach ($products as $product) {
-      if (empty($product->flatrate) || is_null($product->flatrate[$mid])) {
+      $flatrate = db_query("SELECT * FROM {uc_flatrate_products} WHERE mid = :mid AND nid = :nid", array(':mid' => $mid, ':nid' => $product->nid))->fetchObject();
+
+    
+      if (empty($flatrate)) {
         // Add the method's default product rate.
         $rate += $method->product_rate * $product->qty;
       }
       else {
         // Add the product-specific rate.
-        $rate += $product->flatrate[$mid] * $product->qty;
+        $rate += $flatrate->rate * $product->qty;
       }
     }
 
