Thanks for the answer, I'll test the blending approach, guess it will work, looks logical.

To my second question, I solved it, used this function to calculate the color:

Code:
// function to get average color of the bitmap

float4 getAverageColor()
{
	float4 Color = (0,0,0,1);
	for(int i = 0; i<= 1; i++)
	{
		Color.rgb += tex2D(DetailMapSampler,float2(i*fSampleRate,i*fSampleRate)).rgb;
		Color.rgb /= 2; 	
	}
	
	return Color;
}




I'm not sure though if it's too expensive.

What I'm using it for is a pretty interesting approach at detail mapping, inspired by this blog post:

http://blog.wolfire.com/2009/12/Detail-texture-color-matching