バージョンはCakePHP2.4.6です。
DBはMySQLを使用しています。

異なるDB間でアソシエーションを組むにはどうしたらよいでしょうか?
同一DB内で試すと正しい結果が取得できているのですが、
異なるDBにすると望んだ結果が得られません。

DB・tableは下記のようになっています。

database.php

public $default = array(
    'datasource' => 'Database/Mysql',
    'persistent' => false,
    'host' => '192.168.*.***',
    'login' => 'user',
    'password' => 'pass',
    'database' => 'customer_db',
    'prefix' => '',
    'encoding' => 'utf8',
);
public $company_db= array(
    'datasource' => 'Database/Mysql',
    'persistent' => false,
    'host' => '192.168.*.***',
    'login' => 'user',
    'password' => 'pass',
    'database' => 'company_db',
    'prefix' => '',
    'encoding' => 'utf8',
);

DB・Table構造

DB:customer_db
CREATE TABLE customer (
 id INT NOT NULL AUTO_INCREMENT,
 company_code INT NOT NULL,
 customer_type varchar(255) NOT NULL,
 PRIMARY KEY (`id`)
)

DB:company_db
CREATE TABLE company (
 id INT NOT NULL AUTO_INCREMENT,
 company_code INT NOT NULL,
 company_name varchar(255) NOT NULL,
 PRIMARY KEY (`id`)
)

INSERT INTO customer (company_code, customer_type) VALUES
(1, 'A'),
(2, 'B'),
(3, 'C');

INSERT INTO company (company_code, company_name) VALUES
(1, 'ああああ株式会社'),
(2, '株式会社いいいい'),
(3, 'うううう株式会社');

これを下記のようにアソシエーションしています。

コントローラー

<?php
class CustomerController extends AppController {

  public $uses = array('Customer', 'Company');

    public function index() {
      $data = $this->Customer->find('all', array('limit' => 3));
      $this->set('customer', $data);
    }

}

モデル

//Customer.php
<?php

class Customer extends AppModel {

  public $name = 'Customer';
  public $useDbConfig = "default";
  public $useTable = "customer";

  public $belongsTo = array(
      'Company' => array(
          'className' => 'Company',
          'fields' => array('company_code', 'company_name'),
          'conditions' => array('Customer.company_code = Company.company_code')
      )
  );
}

//Company.php
<?php

class Company extends AppModel {

  public $name = 'Company';
  public $useDbConfig = "company_db";
  public $useTable = "company";

}

これを実行すると下記のような結果が出力されます。

array(
    (int) 0 => array(
        'Customer' => array(
            'id' => '1',
            'company_code' => '1',
            'customer_type' => 'A'
        ),
        'Company' => array(
            'company_code' => '1',
            'company_name' => 'ああああ株式会社'
        )
    ),
    (int) 1 => array(
        'Customer' => array(
            'id' => '2',
            'company_code' => '2',
            'customer_type' => 'B'
        ),
        'Company' => array(
            'company_code' => '1',
            'company_name' => 'ああああ株式会社'
        )
    ),
    (int) 2 => array(
        'Customer' => array(
            'id' => '3',
            'company_code' => '3',
            'customer_type' => 'C'
        ),
        'Company' => array(
            'company_code' => '1',
            'company_name' => 'ああああ株式会社'
        )
    )
)

Customer側は全データ正しく取得できているのですが、
Company側が全て最初の1レコードしか取得できません。
そこでSQLのログを確認したところ下記のようなSQL文が発行されていました。

SELECT `Customer`.`id`, `Customer`.`company_code`, `Customer`.`customer_type` FROM `customer_db`.`customer` AS `Customer` WHERE 1 = 1 LIMIT 3
SELECT `Company`.`company_code`, `Company`.`company_name` FROM `company_db`.`company` AS `Company` WHERE 1 = 1
SELECT `Company`.`company_code`, `Company`.`company_name` FROM `company_db`.`company` AS `Company` WHERE 1 = 1
SELECT `Company`.`company_code`, `Company`.`company_name` FROM `company_db`.`company` AS `Company` WHERE 1 = 1

なぜJOINされないのかが調べてもわかりませんでした。
2つのテーブルを同一DB内に置いた場合は正しくJOINされていました。
異なるDB間でのJOINは不可能なのでしょうか?

よろしくお願い致します。