Catalyst->setupでマッチ変数が使用されてしまうので、

Catalyst::DispatchType::Regexの読み込み自体をキャンセルしてもいいかもしれない。どうせDispatcherはPrivateかLocalぐらいしか使わないし。キャンセル方法は後で調べよう。

で書いたとおり、Catalyst::Dispatcher::Regexを読み込ませないようにしてみました。(これが妥当かどうかは不明)

use Catalyst;
use Catalyst::Dispatcher;
@Catalyst::Dispatcher::PRELOAD = qw(Index Path);
...
__PACKAGE__->setup;