The problem you have is, that the whole price handling is made in JS for configurable products. So you need to change the JS to solve this issue.
this method is yours:
/js/varien/configurable.js:271
reloadPrice: function(){
if (this.config.disablePriceReload) {
return;
}
var price = 0;
var oldPrice = 0;
for(var i=this.settings.length-1;i>=0;i--){
var selected = this.settings[i].options[this.settings[i].selectedIndex];
if(selected.config){
price += parseFloat(selected.config.price);
oldPrice += parseFloat(selected.config.oldPrice);
}
}
optionsPrice.changePrice('config', {'price': price, 'oldPrice': oldPrice});
optionsPrice.reload();
return price;
if($('product-price-'+this.config.productId)){
$('product-price-'+this.config.productId).innerHTML = price;
}
this.reloadOldPrice();
},
To overwrite this method do something like this:
var ExtendedConfigurable = Class.create();
// inherit from Config class:
ExtendedConfigurable.prototype = Object.extend(new Product.Config(), {
reloadPrice: function(message) {
// do whatever
}
});
Product.Config = ExtendedConfigurable;