Yes, I noticed that with a few other websites, so I've written another script for you which takes the site's Alexa Rank straight off the website.
code:
var PSM = "Alexa Rank: %alexa%";
var URL = "http://www.gem-flash.com";
function OnEvent_Initialize(MessengerStart) {
    if (Messenger.MyStatus > 0) {
        OnEvent_Timer();
    }
}
function OnEvent_Signin(Email) {
    OnEvent_Timer();
}
function OnEvent_Timer(TimerId) {
    MsgPlus.AddTimer("UpdateTimer", 1800000);
    UpdateAlexaRankPSM();
}
function UpdateAlexaRankPSM() { 
    var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    xmlhttp.open("GET", "http://client.alexa.com/common/css/scramble.css", true);
    xmlhttp.send(0);
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
            var Scramble = xmlhttp.responseText;
            xmlhttp.open("GET", "http://www.alexa.com/data/details/traffic_details?url=" + encodeURI(URL), true);
            xmlhttp.send(0);
            xmlhttp.onreadystatechange = function() {
                if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                    var Rank = "";
                    var Raw = xmlhttp.responseText.match(/->(.*?)<\/span><b/)[1].match(/(?:"[^"]+")?>?[\d,]+<?/g);
                    for (var i = 0; i < Raw.length; i++) {
                        if (/^"([^"]+)">([\d,]+)<?$/.test(Raw[i]) && !new RegExp(RegExp.$1).test(Scramble)) Rank += RegExp.$2;
                        else if (/^>?([\d,]+)<?$/.test(Raw[i])) Rank += RegExp.$1;
                    }
                    Messenger.MyPersonalMessage = PSM.replace(/%alexa%/gi, Rank);
                }
            }
        }
    }
}
As before, change the red text to suit your needs. This script is slower than the other one because it has to load more data (including a nasty scrambler system 

), but the end result is that it reflects the same rank as the web page. Enjoy!