オブジェクトのカスタムボタンに指定するVisualforceおよびコントローラーは、そのオブジェクトタイプのstandardControllerのExntesionsになっている必要があります。
具体的には、ブログの例ではOptunityのカスタムボタンなので、Visualforceが
<apex:page standardController=”Opportunity” //←ここ
extensions=”OpportunityPrint” action=”{!doPrintMt}”>
</apex:page>
となっているわけで、 standardController=のところに、該当のカスタムオブジェクトのタイプを指定しないと、そのVisualforceをカスタムボタンに指定できないと思います。
この部分を確認してみてください。