What is an appropriate test for a normally distributed, heteroscedastic, multi-factor data set? I have a data set of active layer depths from an Arctic field site. There are two factors in the data set, Month measured (July or August), and Location (shrub patch or open tundra). I had intended on running a two-way ANOVA to test for differences between treatments so I tested the model assumptions graphically. The Q-Q plots indicate normality, but the plot of the residuals against the fitted y indicate heteroskedasticity. I should also note that interaction plots suggest essentially no interaction between factors.
I have tried a log transformation, which seems to create equal variance, but the distribution becomes non-normal. Before I start randomly applying transformations, I wanted to explore alternatives. My understanding is that there is a non-parametric alternative to a two-way ANOVA, but I am wondering if there is a more effective tool. For example is there an appropriate way of using a generalized linear model (GLM) to solve this problem? I am new to the world of GLMs but I have been told in the past they are more versatile.
I have added a box plot of the data to clarify. 
 A: What is your sample size?  If it is fairly large, you will be robust to non-normality unless there are extreme outliers in the data (mild non-normality is one of the most ignorable assumptions).  An alternative to transforming the data is to weight the observations in each cell (combination of factors) by $weight = 1/\sigma^2$, where the variance is estimated by taking the $s^2$ of values in that cell.  Again, there is an old rule of thumb for balanced ANOVA that says you don't have to worry much about non-constant variance unless some cells have standard deviations greater than twice that in other cells.
The integer-response GLM models mentioned above aren't appropriate (you have, it appears, positive-valued continuous response), such as Poisson regression, Logistic Regression, Negative Binomial.  However (thanks for jogging my memory, Nick) you MIGHT consider a GLM with Gamma family, since that is compatible with non-constant variance, but (in R at least) it has a fairly rigid model for the variance (assumes a constant shape parameter) so it might not be any better fit.  It also might be harder to interpret and explain to others than a weighted ANOVA (or even unweighted ANOVA), so for practical reasons I'd lean toward the ANOVA and not a GLM.
EDIT:  Now that I see your data, I'd suggest that you try a transformation, such as $y_i^* = \sqrt{y_i}$, then apply regular ANOVA.  This is because categories with larger means are associated with larger variances and the square root transformation will often correct that (in general, the Box-Cox transformation can be used).
